Как связывать пакеты Python (пример: Microsoft Visual Studio 2017) - PullRequest
0 голосов
/ 16 ноября 2018

Я собираю Python из исходного кода, преимущество в том, что он будет оптимизирован для моего оборудования (PGO).Но я также хочу скомпилировать сторонние пакеты, такие как NumPy или SciPy, чтобы воспользоваться Intel MKL (у меня есть процессор Xeon) и оптимизировать их, а не просто устанавливать их через PIP, который загружал бы предварительно скомпилированные, «общие», неоптимизированныеcode.

Поскольку я мог бы самостоятельно скомпилировать «много» пакетов, я ищу предложения относительно того, как автоматизировать этот процесс.«Традиционный» или «стандартный» способ сделать это будет выглядеть примерно так:

1) скомпилировать пакет

2) включить этот пакет в python (возможно, с использованием PIP?)

3) повторите предыдущие 2 шага для каждого пакета.

Я намереваюсь использовать Microsoft Visual Studio (под Windows 10 x64), поэтому мой вопрос таков:

Есть ли способ автоматизировать этот процесс с помощью Visual Studio? , если это так, Может кто-нибудь дать мне подсказку о том, что искать?

Я новичок в Visual Studio иЯ не прошу полного «Как», но я был бы признателен, если бы кто-нибудь сказал мне, можно ли это сделать (или выполнимо, в зависимости от того, какие пакеты нужно скомпилировать), в противном случае я бы вернулся к выполнению этого процесса вручную путем компиляции идобавляя их в Python по одному.

1 Ответ

0 голосов
/ 16 ноября 2018

Если вы хотите оптимизировать, вы не сможете по-настоящему автоматизировать, так как каждая библиотека будет нуждаться в собственной настройке.в противном случае пипс, скорее всего, и есть путь.Реально, однако, вам, вероятно, потребуется оптимизировать только несколько библиотек, таких как научный стек и, возможно, numba для лучшей компиляции jit.

TLDR; установите numpy из источника, используя blas / lapack (математические библиотеки), оптимизированный для вашей системы, и используйте pip для остальных.

...