Apache MXNet - Arquitetura do Sistema

Este capítulo o ajudará a compreender a arquitetura do sistema MXNet. Vamos começar aprendendo sobre os Módulos MXNet.

Módulos MXNet

O diagrama abaixo é a arquitetura do sistema MXNet e mostra os principais módulos e componentes do MXNet modules and their interaction.

No diagrama acima -

  • Os módulos nas caixas de cor azul são User Facing Modules.

  • Os módulos em caixas de cor verde são System Modules.

  • A seta sólida representa alta dependência, ou seja, depende muito da interface.

  • A seta pontilhada representa a dependência de luz, ou seja, estrutura de dados usada para conveniência e consistência da interface. Na verdade, ele pode ser substituído pelas alternativas.

Vamos discutir mais sobre módulos de sistema e voltados para o usuário.

Módulos voltados para o usuário

Os módulos voltados para o usuário são os seguintes -

  • NDArray- Fornece programas imperativos flexíveis para Apache MXNet. Eles são matrizes n-dimensionais dinâmicas e assíncronas.

  • KVStore- Atua como interface para sincronização eficiente de parâmetros. Em KVStore, KV significa Key-Value. Portanto, é uma interface de armazenamento de valor-chave.

  • Data Loading (IO) - Este módulo voltado para o usuário é usado para carregamento e aumento de dados distribuídos eficientes.

  • Symbol Execution- É um executor de gráfico simbólico estático. Ele fornece execução e otimização de gráficos simbólicos eficientes.

  • Symbol Construction - Este módulo voltado para o usuário fornece ao usuário uma maneira de construir um gráfico de computação, ou seja, configuração de rede.

Módulos de Sistema

Os módulos do sistema são os seguintes -

  • Storage Allocator - Este módulo de sistema, como o nome sugere, aloca e recicla blocos de memória de forma eficiente no host, ou seja, CPU e diferentes dispositivos, como GPUs.

  • Runtime Dependency Engine - O módulo do mecanismo de dependência de tempo de execução programa, bem como executa as operações de acordo com sua dependência de leitura / gravação.

  • Resource Manager - Módulo de sistema Resource Manager (RM) gerencia recursos globais como o gerador de números aleatórios e espaço temporal.

  • Operator - O módulo do sistema do operador consiste em todos os operadores que definem o cálculo progressivo e gradiente estático, ou seja, a retropropagação.