El diseño de la estructura de datos de la calculadora de datos y la síntesis de costos a partir de los primeros principios y los costos aprendidos modelan las primitivas criptográficas del periódico matutino

Este documento precedió el trabajo sobre los continuos de datos que vimos la última vez, y analiza de manera más general el diseño interactivo y semiautomático de las estructuras de datos. Una estructura de datos aquí se define como una combinación de (1) un diseño de datos que describe cómo se almacenan los datos, la introducción a la teoría de números en criptografía y seguridad de red, y (2) algoritmos que describen cómo se logra su funcionalidad básica sobre el diseño de datos específico . Para las estructuras de datos con solo dos tipos diferentes de nodos (p. Ej., Nodos hoja y nodos no hoja en un árbol), los autores estiman que hay diseños de estructuras de datos válidos más que posibles. Docenas de nuevas estructuras de datos se publican cada año, pero aún estamos rascando la superficie.

Nuestra intuición es que la mayoría de los diseños (e incluso los inventos) tratan de combinar un pequeño conjunto de conceptos fundamentales de diferentes maneras o afinaciones … nuestra visión es crear tipos de criptografía en pdf en la tabla periódica de estructuras de datos para poder expresar su enorme espacio de diseño. Tomamos el primer paso en el documento, presentando un conjunto de primeros principios que pueden sintetizar un orden de magnitud más de diseños de estructuras de datos de lo que se ha publicado en la literatura.

Es una herramienta interactiva que acelera el proceso de diseño convirtiéndolo en un proceso de exploración, mejorando la productividad de los investigadores e ingenieros; es capaz de responder preguntas sobre el diseño de la estructura de datos del tipo “si” para comprender cómo el mercado actual de las criptomonedas presenta nuevas opciones de diseño, cargas de trabajo y hardware que afectan el rendimiento (latencia) de un diseño existente. Actualmente admite consultas de lectura para diseños básicos conscientes del hardware.

En el núcleo de la calculadora de datos hay un conjunto de primitivas de diseño, organizadas en cinco grupos (clases) diferentes: cómo se organizan, filtran y dividen los nodos, el diseño de los nodos secundarios y si se permite o no la recursión. Escaneando la columna “dominio” en la tabla a continuación, estos leen como parámetros de configuración para un generador de estructura de datos. (Las columnas de la derecha muestran los valores de los parámetros utilizados por algunas estructuras de datos comunes; consulte la clave en la parte inferior de la tabla). Las primitivas para dictar la ubicación física son fundamentales para calcular la facilidad de uso de la memoria caché de una estructura de datos y, por lo tanto, el costo del servidor de correo electrónico cifrado para atravesarla.

Los primitivos se combinan para formar ‘elementos’: la especificación completa de un tipo de nodo dentro de la estructura de datos. Por ejemplo, elementos internos (no terminales) y elementos de hoja (terminales). Los diagramas de radar en los que el grupo de minería de datos cryptonight muestra las primitivas de diseño seleccionadas, y la elección de configuración particular realizada para esa primitiva (los segmentos en los radios) se pueden usar para comparar visualmente los diseños.

Cada primitiva de acceso a datos caracteriza un aspecto de cómo se accede a los datos (p. Ej., Búsqueda binaria, exploración, …), y tiene una cantidad de diferentes realizaciones posibles (“primitivas de nivel 2”). La idea es modelar el comportamiento de estos primitivos de nivel 2 y luego combinar los modelos para comprender el comportamiento de las estructuras de datos sintetizadas a partir de combinaciones de los primitivos.

Para cada primitiva de nivel 2, la calculadora de datos contiene uno o más modelos que describen su comportamiento de rendimiento (latencia). Estos no son modelos estáticos; están capacitados y equipados para combinaciones de datos y los 10 principales perfiles de hardware de las compañías de minería de cifrado, ya que estos dos factores afectan drásticamente el rendimiento … Los modelos son modelos paramétricos simples; dada la decisión de diseño de mantener los primitivos simples (para que puedan reutilizarse fácilmente), tenemos experiencia en el dominio para esperar cómo se verá su comportamiento de desempeño (sic).

Dada una especificación de diseño de datos, un perfil de hardware y una carga de trabajo, la calculadora utiliza un sistema basado en reglas para calcular el costo general de una operación. La siguiente figura, que debe leerse comenzando desde la parte superior derecha, muestra el proceso para estimar el costo de una operación de obtención. Como parte del proceso, la calculadora simula rellenar la estructura de datos para determinar cuántos nodos existirán, la curva elíptica, la altura de la estructura, y así sucesivamente. Esta información es necesaria para estimar el costo de operación. La salida es un árbol de sintaxis abstracta con los patrones de acceso de la ruta que se necesita atravesar. Estos pueden calcularse utilizando los modelos ajustados, y el costo total se calcula como su suma.

Una parte clave para determinar el rendimiento es si los datos están “calientes” o “fríos”, y si están calientes, donde se encuentra en la jerarquía de caché. La intuición de modelado es que veremos cambios de rendimiento similares a los pasos en cada nivel de caché dependiendo de si los datos se almacenan en la memoria caché allí o no. Por lo tanto, podemos modelar cada capa con una función sigmoide, y el comportamiento general a través de una jerarquía de caché como la suma de url de descarga cryptolocker de un conjunto de funciones sigmoideas.

Para una carga de trabajo determinada, la calculadora calcula cuántas veces se accederá a cada nodo, lo que nos permite calcular un factor de popularidad p: ​​el número de accesos para el nodo dado, dividido por el número total de accesos en todos los nodos criptomoneda minería plataforma india. El costo de acceso aleatorio para una operación se deriva del modelo de caché ajustado y un factor de ponderación. El parámetro es el número de secuencia del ciclo de la operación en la carga de trabajo. El resultado final es que predecimos costos de acceso más pequeños para los nodos a los que se accede con mayor frecuencia y viceversa.

Al variar los parámetros de entrada a la calculadora, podemos hacer preguntas “¿qué pasaría si?”. Por ejemplo, “¿cuál sería el impacto en el rendimiento si cambio el diseño de mi árbol B al agregar un filtro de floración en cada hoja?”, O “¿cuál sería el impacto en el rendimiento si cambiara este tipo de instancia en AWS?”. Entrenar a los primitivos de nivel 2 en una nueva plataforma de hardware toma solo unos minutos, y es una tarea única para cada plataforma.

Para la parte final de la evaluación, se le pide a la calculadora de diseño que presente diseños para dos escenarios diferentes de carga de trabajo, en el mismo perfil de hardware, comenzando con la plata de cartera de hardware de criptomoneda del libro mayor nano s desde una pizarra en blanco. Sin embargo, a la calculadora se le brinda orientación para explorar diseños que combinan hashing, indexación tipo B y un registro simple. Los costos de síntesis varían según el tamaño de la carga de trabajo estimada: desde unos pocos segundos hasta 30 minutos. ”

En el primer escenario, hay lecturas y escrituras mixtas, y todas las lecturas son consultas puntuales en el 20% del dominio. La calculadora encuentra un diseño que utiliza hash en los niveles superiores de la jerarquía para un acceso rápido a los datos, pero luego el mejor software de minería de criptomonedas reddit la mayor parte del dominio restante se modela usando páginas simples sin clasificar, con indexación de estilo B + -tree para lectura intensiva parte.

banner