travis-CIでのwheel buildとPyPIデプロイ

このページで用意されている環境を使う。GitHub - pypa/python-manylinux-demo: Demo project for building Python wheels for Linux with Travis-CI

  • travis-CI上のpython-manylinux-demo dockerイメージを起動。
  • カレントディレクトリをdocker内の/ioにマウント。
  • docker内でビルドされたwheelが/io/wheelhouse/以下に入る。
  • setup.pyの置いているディレクトリにdistディレクトリを作りwheelhouse/からdist/へwheelをコピー。wheelhouseはカレントディレクトリから見える。
  • あとはtravis-CIのdeploy環境がdist以下のファイルを自動的にデプロイするので、deployの設定を正しく行う。

deploy環境ではPyPIデプロイにtwineが必要。インストールする必要があるがpipではうまくいかなかったので、minicondaからconda環境を作りcondaでtwineをインストールしてパスを通したらとりあえずうまくいった。たぶん。

その他参照元
manylinux1 wheel を作ってみる - methaneのブログ

Ubuntu 14.04 serverから16.04のアップデートでハマる

  • interfaceの名前がeth0からens3に変わってしまって、ネットワーク接続できなくなった。
  • ganglia web serviceの設定が消えるので$default_metric = "cpu_report";をconf_default.phpに設定する。

KVMVNC

一つ目のVMvncのデフォルトポートは5900。パスワードは次のコマンドで確認できる。

% virsh edit vmname

以下のような感じでpasswdが設定されている。

<graphics type='vnc' port='-1' autoport='yes' listen='0.0.0.0' passwd='hoge'/>

二つ目以降順次5901, 5902となっていく模様。5900 + xのxは次のコマンドで確認できる。

% virsh vncdisplay vmname
:1

の場合、5901がポート番号。MacOSの場合、Finder->Go->Connect to serverから

vnc://hostmachine:5901

のようにして接続できる。

KVMメモリサイズ変更

% virsh edit mydata

VirshコマンドによるKVMゲストOSの管理 - Qiita

setuptoolsでインストールしたパッケージのバージョン

python - How can I get the version defined in setup.py (setuptools) in my package? - Stack Overflow

Numpy & Scipyで使われているBLAS, LAPACKを知る方法

1. scipy.show_config(), numpy.show_config()
これだと、画面に出力されるだけ。
2. import numpy.distutils.system_info as sysinfo
python - How to check blas/lapack linkage in numpy/scipy? - Stack Overflow
numpy/system_info.py at master · numpy/numpy · GitHub
これはnumpyだけ?

インテルコンパイラ (intel compiler)

インストールやライセンスが管理されるホストマシンの扱いがややこしい。

  • インストールやレジストレーションなど困ったらhttps://registrationcenter.intel.com/に行く。リンクから辿るのではなく、直に行く。このページに行ければ、おおよそ見当がつく(ついてくる)。
  • 特定ユーザーライセンスの場合はコンパイラのパッケージをダウンロードし、インストールの途中でシリアル番号を書くことになる。このときインストースクリプトによってネットワーク経由で自動的にホストマシン情報がインテル側に登録される。
  • インストールのデフォルトディレクトリがよくわからない。「ここにインストールするか?」と聞かれるが、ここがどこかわからないので、Noと答え、インストーディレクトリとして/opt/intelを指定する。
  • 2016-ver4ではダウンロードスクリプトの--download-onlyの挙動がおかしいので、使わないほうがいい。
  • 2016はホスト3台制限があるが、連絡すれば無制限にしてくれるらしい。https://www.xlsoft.com/jp/products/intel/purchase/intel_license.html#ps_cls 説明から読み取れることは、面倒が起こる可能性があるので、困ったときはアレコレ悩まず、無制限にしたほうがいいだろう、ということだ。