2018年7月12日木曜日

BOLT on VirtualBOX

facebookが出したBOLTについて、VirtualBOX上での動作が出来たので書いておく。
まだまだ日本語での情報も少なく手間取ったり思考錯誤してる人も多いかと思う。

正確に動作を確認した訳ではないが、順次わかる事を書いていく。
このpostにアクセスがあれば続きを早めに書いていく方針。

CentOS7で動作した。
BOLTのビルド環境はだいたい以下の通り
HDD 50G 程度
CPU4コア or 3コア程度
メモリ10G程度
コア数は無くてもビルドできるとは思うが4コアで概算2日程度。
また、ninjaを使っているので途中動作が止まってしまっても、追加でビルドできる。

HDDは50Gあればビルドできるが、boltで最適化するバイナリをビルドする分も必要となる。
とはいえ最終的に出来たbuildディレクトリがあれば十分でpatchをあてたllvmは不要となるので削除していい。
手元でビルドしたboltをgithubなどにあげとけばcloneするだけで動作する。

おおまかな手順は次の通り。
1)kernelは4系を早い段階で入れてしまう。
(3で必須になるので、最初からkernelを上げた方が早くていいに違いないと推測している。)
2)scl devtoolset-6 devtoolset-7 llvm-toolset-7 でビルドできる。
3)perfは4系を使う

# rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
# rpm -Uvh http://www.elrepo.org/elrepo-release-7.0-2.el7.elrepo.noarch.rpm
Retrieving http://www.elrepo.org/elrepo-release-7.0-2.el7.elrepo.noarch.rpm
Retrieving http://elrepo.org/elrepo-release-7.0-3.el7.elrepo.noarch.rpm
Preparing...                          ################################# [100%]
Updating / installing...
   1:elrepo-release-7.0-3.el7.elrepo  ################################# [100%]
# yum --enablerepo=elrepo-kernel install kernel-lt
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * base: ftp.iij.ad.jp
 * elrepo: mirror.cedia.org.ec
 * elrepo-kernel: mirror.cedia.org.ec
 * epel: epel.scopesky.iq
 * extras: mirror.vodien.com
 * updates: mirror.qoxy.com
No package 2 available.
Resolving Dependencies
--> Running transaction check
---> Package kernel-lt.x86_64 0:4.4.140-1.el7.elrepo will be installed
--> Finished Dependency Resolution

Dependencies Resolved

================================================================================
 Package        Arch        Version                    Repository          Size
================================================================================
Installing:
 kernel-lt      x86_64      4.4.140-1.el7.elrepo       elrepo-kernel       39 M

Transaction Summary
================================================================================
Install  1 Package

Total download size: 39 M
Installed size: 175 M
Downloading packages:
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
Warning: RPMDB altered outside of yum.
  Installing : kernel-lt-4.4.140-1.el7.elrepo.x86_64                        1/1
  Verifying  : kernel-lt-4.4.140-1.el7.elrepo.x86_64                        1/1

Installed:
  kernel-lt.x86_64 0:4.4.140-1.el7.elrepo

Complete!
として、お好みのカーネルをインストールする。
インストール後もちろん再起動する。

参考
CentOS7にelrepoからkernel 4系をインストール
https://qiita.com/tukiyo3/items/19866eebd0c52207f99c
アプリケーションを高速化するBOLTを試してみた
https://qiita.com/nigaky/items/fa651f52c5e06294ecd1

0 件のコメント: