Details
Aplicações de alto desempenho são geralmente implementadas em C/C++ permitindo utilizar recursos para memória compartilhada ou memória distribuída, como OpenMP e MPI, ou programação para GPGPUSs (GPUs de propósito geral) utilizando CUDA ou OpenCL. Muitos pacotes em Python fornecem acesso a estes recursos de forma rápida e eficiente. Mas como criar nossas próprias bibliotecas de funções C/C++ de forma a podermos utilizar estes recursos em Python? Nesta palestra apresentaremos, de forma resumida e com base em exemplos, como criar bibliotecas de funções simples e como utilizar CPython para acessar estes recursos. Exemplos baseados na implementação do problema de multiplicação de matrizes serão apresentados para mostrar estes recursos e testes de desempenho rápidos serão utilizados para comparar o desempenho com os recursos disponibilizados na biblioteca NumPy.
