Discussão:Página principal

De Caninos Loucos
Revisão de 20h26min de 11 de setembro de 2019 por Cdab63 (discussão | contribs)
Ir para navegação Ir para pesquisar

Softwares e Aplicações Portados Para Caninos Labrador V1.x V2.x

Softwares Portados:
  1. Bazel: ferramenta desenvolvida pela Google para desenvolvimento de software. Provê uma interface contínua e consistente para desenvolvimento de aplicações com a possibilidade de utilização de múltiplas linguagens de programação. O porte para o Labrador foi feito utilizando a metodologia de bootstrap. Como suporte para o tensoflow. Versões 0.23.2 e 0.24.1. Foram feitas adequações para a execução dos compiladores java. Adequações principais: redimensionamento dos stacks do compilador java e reparametrização para usar o openjdk.dado que a Oracle encerrou o ciclo java para ARM 32 bits no JDK 8.
  2. OpenCV: conjunto de bibliotecas e ferramentas no campo da visão computacional. Instalação a partir do código fonte. Bibliotecas Linux e suporte ao Python 3. Completa reconfiguração para autilização dos conjuntos de instruções NEON e demais extensões de ponto flutuante e vetorização do ARM V7 (32 bits). Substituição de toda a infraestrutura original OpenCV da distribuição Debian pelo código recompilado, inclusive removendo eventuais extensões OpenCV instaladas no python via pip.
  3. OpenMPI: conjunto de bibliotecas e ferramentas para o desenvolvimento de aplicações com paralelismo massivo MIMD. Foi realizada a instalação a partir do código fonte, substituindo completamente as bibliotecas da distribuição Debian. Completa reconfiguração para a utilização otimizada dos conjuntos de instruções ARM V7 (32 bits). Substituição de toda a infraestrutura original da distribuição pelo código recompilado, inclusive removendo bibliotecas locais e demais links.
  4. PySide: conjunto de bibliotecas que fornecem a integração entre o python e Qt.4 (e, em andamento Qt.5). O PySide fornece uma cadeia completa de ferramentas para a rápida integração com qualquer hierarquia de classes C++ do Qt. Instalação a partir do código fonte. Necessária reinstalação por conta das atualizações impostas ao Qt para a instalação do VTK.
  5. VTK: software open source para manipulação e exibição de dados científicos. Inclui ferramentas de estado da arte para renderização 3D, uma suíte de widgets para interação 3D e ampla capacidade de plotagem de dados 2D. Instalação a partir do código fonte com completa reestruturação para utilização das instruções de ponto flutuante NEON e demais extensões de vetorização do ARM V7 (32 bits). Também demanda a atualização do Qt.
  6. FreeCAD: software open source de modelagem paramétrica 3D (CAD). Instalação a partir do código fonte, com reestruturação para a utilização de aceleração NEON e demais acelerações de ponto flutuante da arquitetura ARM V7 (32 bits), bem como a inclusão de suporte para operações OpenGL por emulação, permitindo o uso eficiente em plataformas sem suporte para DRM (aceleração OpenGL por hardware). No momento não foram feitas otimizações para aceleração OpenGL.
  7. Go: Go é um projeto de código aberto desenvolvido pela equipe do Google e muitos contribuidores da comunidade open source. É um ambiente de programação de código aberto que faz com que seja fácil de construir software simples, confiável e eficiente. Utilizado para a construção o pacote Electrum. Linguagem de desenvolvimento da Google, utilizada para compilação do Electrum. Instalação vanilla (sem grandes configurações ou alterações/patches).
  8. Electrum: Plataforma blockchain para processamento - dentre outros - de carteiras BitCoin. Instalação vanilla a partir do código fonte.
  9. ffmpeg: software de processamento de vídeo e áudio. Instalação a partir do código fonte. Reconfigurado para utilização de todas as acelerações em operações de ponto flutuante e para a adição de todos os codecs possíveis. Sem utilização de aceleração OpenGL.
  10. coremark: software de benchmark escalar e ponto flutuante (CPU benchmark). Instalação vanilla a partir do código fonte.
  11. glmark2: software de benchmark de GPUs (processadores gráficos). Instalação vanilla a partir do código fonte.
  12. burrow: software de carteira de moedas virtuais (particularmente aderente ao Ethereum. É um projeto hospedado pela The Linux Foundation. Instalação vanilla a partir do código fonte.
Instalações
  1. Plataforma python3: completa. Todas as extensões de processamento numérico, banco de dados, interfaces gráficas, integrações com aplicativos e com demais infraestruturas de programação, processamento de vídeo e áudio, spyder3 SDK.
  2. Keras: front end para deep learning. Instalação vanilla.
  3. Theano: back end para deep learning. Instalação vanilla. Contém basicamente as mesmas funcionalidades do tensorflow. O desempenho de processamento em plataformas intel é menor por conta do menor número de otimizações agressivas, entretanto exatamente pela ausência dessas otimizações a

portabilidade é muito maior, incluindo as plataformas ARM V7. Nas plataformas ARM V7 é possível habilitar as extensões NEON e demais vetorizações melhorando sensivelmente o desempenho relativo à versão vanilla.

  1. tensorflow: back end para deep learning. Instalação altamente dependente de patches, dependente de bazel e dependente de arquitetura. Atualmente encontra-se portado em 50% e depende do desenvolvimento de patches para a arquitetura SoC S500.
Softwares Desenvolvidos
  1. Identificação e contagem de carros
  2. Identificação de placas de licenciamento
Softwares Adaptados
  1. Identificação de faces