Bem-vindo ao repositório de exemplos SDAccel. Este repositório contém os exemplos mais recentes para você começar a otimizar aplicativos direcionados às placas de aceleração Xilinx PCIe FPGA. Todos os exemplos estão prontos para serem compilados e executados em placas suportadas por SDAccel e parceiros de serviços de nuvem acelerados. O repositório está organizado da seguinte forma:
Exemplos SDAccel Git Pressupõe que o usuário esteja familiarizado com o ambiente SDAccel básico, configuração, programação e fluxo de depuração. Caso contrário, é recomendável cobrir estes tópicos nos Guias do usuário SDAccel:
Quadro | Versão do software |
---|---|
Xilinx Alveo U200 | SDx 2019.1 |
Xilinx Alveo U250 | SDx 2019.1 |
Xilinx Alveo U280 | SDx 2019.1 |
É principalmente recomendado começar com o exemplo Hello World, que conscientiza os novos usuários sobre a estrutura básica de um aplicativo baseado em SDAccel.
Como parte dos recursos disponíveis para um desenvolvedor de aplicativos, o SDAccel inclui ambientes para testar a correção de um aplicativo tanto no nível funcional de software quanto no nível emulado de hardware.
Esses modos, chamados sw_emu e hw_emu, permitem ao desenvolvedor traçar o perfil e avaliar o desempenho de um projeto antes de compilar para execução da placa. É recomendado que todas as aplicações sejam executadas pelo menos no modo sw_emu antes de serem compiladas e executadas em uma placa FPGA.
cd <PATH TO SAMPLE APPLICATION>
make all TARGET=<sw_emu|hw_emu> DEVICE=<FPGA Platform>
onde
sw_emu = software emulation
hw_emu = hardware emulation
NOTA: O fluxo de emulação de software é apenas uma verificação de correção funcional. Não estima o desempenho da aplicação em hardware.
O fluxo de emulação de hardware é uma simulação precisa do ciclo do hardware gerado para a aplicação. Como tal, espera-se que esta simulação demore muito tempo. É recomendado que neste exemplo o usuário ignore a execução da emulação de hardware ou modifique o exemplo para trabalhar em um conjunto de dados reduzido.
Fluxo de execução recomendado para aplicativos de exemplo em emulação
O makefile do aplicativo pode executar o aplicativo diretamente com o seguinte comando:
cd <PATH TO SAMPLE APPLICATION>
make check TARGET=<sw_emu|hw_emu> DEVICE=<FPGA Platform>
onde
sw_emu = software emulation
hw_emu = hardware emulation
Caso a aplicação não tenha sido compilada anteriormente, a regra check makefile irá compilar e executar a aplicação no modo de emulação selecionado pelo usuário.
O comando para compilar a aplicação para execução na placa de aceleração FPGA é
cd <PATH TO SAMPLE APPLICATION>
make all DEVICE=<FPGA Platform>
O destino padrão do makefile é compilar para hardware. Portanto, não é necessário definir a opção TARGETS. NOTA: A compilação para execução da aplicação em hardware gera lógica customizada para implementar a funcionalidade dos kernels em uma aplicação. É normal que o tempo de compilação do hardware varie de 30 minutos a algumas horas.
Coleção de exemplos voltados para ensinar ao usuário as melhores práticas de como utilizar diferentes recursos do SDAccel e iniciar sua própria aplicação.
Coleção de exemplos de transferência de processador para unidades de computação baseadas em FPGA.
Coleção de exemplos em processamento de imagem e vídeo.
Coleção de bibliotecas comuns usadas em todos os exemplos para auxiliar no desenvolvimento rápido do código host do aplicativo.
Coleção de funções utilitárias usadas como parte dos Makefiles em todos os exemplos. Este conjunto inclui regras e scripts Makefile para iniciar aplicativos compilados SDAccel em placas hospedadas pelo Nimbix diretamente do terminal do desenvolvedor.
Placas de aceleração FPGA foram implantadas na nuvem. Para obter informações sobre como executar o exemplo em uma nuvem específica, consulte os guias a seguir.
Para tirar dúvidas e obter ajuda em qualquer projeto deste repositório ou em seus próprios projetos, visite os Fóruns SDAccel.
Para executar este exemplo usando a GUI do SDAccel, siga as instruções de configuração no README da GUI do SDAccel