SlideShare ist ein Scribd-Unternehmen logo
1 von 82
Downloaden Sie, um offline zu lesen
NVIDIA GPUで作るHeadless X11 Linux
President of REAL TiME XPRESS & RTX1911 demo division
Coder, Graphics & Music artist, Director
Tomoki Shishikura (@T_SRTX1911)
メガデモ勉強会 | SAKURA Internet | Jul 20, 2013
月曜日22日7月13年
最近のデモ
月曜日22日7月13年
最近のデモ
SCOTTIE - Nonoil & SystemK
月曜日22日7月13年
最近のデモ
SCOTTIE - Nonoil & SystemK
FPS
月曜日22日7月13年
最近のデモ
月曜日22日7月13年
最近のデモ
月曜日22日7月13年
最近のデモ
月曜日22日7月13年
最近のデモ
月曜日22日7月13年
問題点
•モダンなデモを開発するには、僕のMacBook Proでは遅すぎる。
(Intel Core2Duo, 8GB RAM, NVIDIA 9400M)
•SCOTTIEは、0 ~ 4 FPSでしか動かなかった。
(SCOTTIEはDirectXですが、参考程度に...)
•動かすのですら大変なのに開発となったら...
月曜日22日7月13年
やりたい事
•外でOpenGLのデモを作るとき、もっと快適に開発をしたい。
•外で重いシェーダー(GLSL)などを開発したい。
•CUDAとかも使いたい
•自宅にそこそこの環境があるし、どうにかならないのか...
月曜日22日7月13年
解決案
1.WindowsのRDPを使用する。
2.Linux の X11 Forwarding を使用する。
月曜日22日7月13年
Windowsマシンに
RDP (Remote Desktop Protocol)
で画面を転送してみる
月曜日22日7月13年
月曜日22日7月13年
結果
動くには動くが、使えない機能など
も結構ある
(DirectXは動くので、そっちで開発する人はこれでいいかも...)
月曜日22日7月13年
解決案
1.WindowsのRDPを使用する。
2.Linux の X11 Forwarding を使用する。
月曜日22日7月13年
Linux の X11 Forwarding
を使ってみる
月曜日22日7月13年
月曜日22日7月13年
結果
いろんな事が一応できるが、HWの
依存関係とかが...
CUDAも微妙 (グラフィカルな物は動かない)...
月曜日22日7月13年
解決案
1.WindowsのRDPを使用する。
2.Linux の X11 Forwarding を使用する。
月曜日22日7月13年
解決案
1.WindowsのRDPを使用する。
2.Linux の X11 Forwarding を使用する。
3. Headless X11 な Linux を使用する。
月曜日22日7月13年
Headless X11って何?
•Headless つまり、頭がない事(直訳)
•マウス、キーボード、モニター等を必要
としないLinux環境
•VNC + SSH tunneling で手元のコンピューターへ画面を転送する
•速い、CUDAとかも使える。
月曜日22日7月13年
メリット
•コンピューターに必要なスペースが少ない
•速い、普通のVNCとかより描画などが速い
•VPN などを使えば、外からでも高性能な環境が使える
•OpenGLでデモを作る人はこれで るね! (Linuxのウィンドウ周り
のコードをかく必要があるけど...)
↑ (デモならGLUT使えばいいんじゃない?)
月曜日22日7月13年
デメリット
•ネイティブ環境と比べると、遅い
•たまに切れる (致命的、僕の環境ではVNCでターミナルを開く
と、切れる)
•セキュリティ的に甘い (VPNなどを通してアクセスするの推奨)
•一人しか使えない (? 調査中)
月曜日22日7月13年
今回の設定環境
•VPNは、Mac OS X ServerのVPN機能を使用 (L2TP)
•Linux は、CentOS 6.4 を使用 (RHEL系がいい)
•AMD Athlon II X2, 4GB RAM, NVIDIA GTS250...
•設定などに Mac OS X 10.8 のターミナルを使用
月曜日22日7月13年
必要スキル
•基本的な Linuxスキル (コマンドライン)
•SSHなどを扱えるスキル
•まあトラブルを自己解決できる人なら大丈夫!
月曜日22日7月13年
VIM or EMACS
•Linuxのことを話すと必ずこれでなんか言う人がいるが...
はっきり言ってどうでもいい!
•GNU nano とか echo とか使えばいいんじゃないの (適当)
•(あ、ちなみに説明ではvimを使います。[not vim教])
月曜日22日7月13年
早速作ろう!
月曜日22日7月13年
流れ
1. CentOS 6セットアップ
2. 初期設定(sudo)
3. ネットワークを自動起動させる
4. GPU driver setup
4-1. 下準備
4-2.ドライバーインストール
月曜日22日7月13年
流れ
5. リポジストリの編集
6. X環境構築
7. Headless X11 構築
8. CUDA 環境構築
9. x11vnc 構築
月曜日22日7月13年
1. CentOS 6 セットアップ
•普通にセットアップします
•SSH などのパッケージは、必ず選択する事
•少しの間、キーボード、マウス、ディスプレイが必要
月曜日22日7月13年
2. 初期設定 (sudo)
•作業効率を上げるため sudo の設定をする。
• $ su
• # visudo
• [アカウント名] ALL=(ALL) ALL を追加
•保存して exit
月曜日22日7月13年
2. 初期設定 (sudo)
•以上でsudoが使えるようになる。
•以降 ユーザーのコマンドは、先頭に $
スーパーユーザーのコマンドは、先頭に # を付けて説明する。
月曜日22日7月13年
3. ネットワークを自動接続させる
•CentOSの起動時にネットワークを自動接続させる
• #vi /etc/sysconfig/network-scripts/ifcfg-[ネットワークデバイス名]
•自動接続させるため ONBOOT を yes にする
•保存した後、ネットワークを再起動する
# /etc/rc.d/init.d/network restart
•ここからはSSHを使うとよさげ
月曜日22日7月13年
4. GPU driver setup
•これより、NVIDIAのドライバーをセットアップするのだが、
Windowsなどと比べるといろいろ複雑なので、少し詳しく書く。
月曜日22日7月13年
4-1. 下準備
•標準では、nouveauドライバーがロードされている。
•Xが起動しているとドライバーの切り替えができないためXを止め
るのだが、標準ではXがkillされると自動復帰するので、Xが自動
起動しないようにする。
月曜日22日7月13年
4-1. 下準備
•まずは、自動でXが起動しないように設定をする。
•# vi /etc/inittab
•id:5:initdefault を id:3:initdefault に変更する。
月曜日22日7月13年
4-1. 下準備
•次にnouveauドライバーがロードされないようにする
•# vi /boot/grub/grub.conf
•kernelで始まる行の終わりに次の文を加える
•nouveau.modeset=0
•保存して # reboot
月曜日22日7月13年
4-1. 下準備
•以降、起動時のロード画面がかわる
•いったんログイン後にstartxでXをスタートさせ、フォルダの名前
を英語にするか聞かれるので、英語に変えておく。
月曜日22日7月13年
4-2. ドライバーインストール
•$ cd Downloads
•$ wget [NVIDIAのドライバーのダウンロードURL]
•ダウンロード後、実行可能にするパーミッションを与える
•$ chmod +x [ファイル名]
月曜日22日7月13年
4-2. ドライバーインストール
•スーパーユーザー権限でドライバーをインストールする
•$ sudo ./[ファイル名]
•全部Yesとかの方を選ぶ、WARNINGはOKを押して進める
•インストール後、再起動
•# reboot
月曜日22日7月13年
5. リポジストリの編集
•今回のやり方はテストのため、セキュリティ的に望ましくない方
法をしています。しっかりやりたい人は、自分で調べて...
•まずは、リポジストリを最も速いミラーに設定する。
•$ sudo -i
•# yum install yum-fastestmirror
月曜日22日7月13年
5. リポジストリの編集
•CentOSPlusを有効にする
•# vi /etc/yum.repos.d/CentOS-Base.repo
•[centosplus] の下にある enabled=0 を 1 にする。
•そして次の二つのリポジストリを追加する
月曜日22日7月13年
5. リポジストリの編集
[rpmforge]
name=RPMforge RPM repository for Red Hat Enterprise Linux
baseurl=http://ftp.riken.jp/Linux/dag/redhat/el6/en/$basearch/
rpmforge/
gpgcheck=0
enabled=1
月曜日22日7月13年
5. リポジストリの編集
[epel]
name=EPEL RPM Repository for Red Hat Enterprise Linux
baseurl=http://ftp.riken.jp/Linux/fedora/epel/6/$basearch/
gpgcheck=0
enabled=1
の二つを追加する。
月曜日22日7月13年
5. リポジストリの編集
•保存後リポジストリをアップデートする。
•# yum update
月曜日22日7月13年
6. X環境構築
•保存後リポジストリをアップデートする。
•# yum update
月曜日22日7月13年
7. Headless X11 構築
•nvidia-xconfig の --use-display-device=Noneによって、Headless
X11 環境を構築する。
•--virtual=WxH で解像度を指定し、 --enable-all-gpus で全ての
GPUを使用する。
•# nvidia-xconfig -a --use-display-device=None --enable-all-gpus --
virtual=1280x800
月曜日22日7月13年
7. Headless X11 構築
•備考:
•udevが起動してなかったり、DeviceセクションにBusIDがない
と、Xは起動しない。
•udevを起動させておくか、DeviceセクションにBusIDを記載して
おく
月曜日22日7月13年
7. Headless X11 構築
•このままでは、ユーザー権限でXを起動しようとしたとき、PAM
関連のセキュリティエラーが出て起動できないので、ユーザーで
もXを起動できるように書き換える。
•# vi /etc/pam.d/xserver
•auth required の pam_console.so を pam_permit.so に変更
•これで起動できるようになる
月曜日22日7月13年
7. Headless X11 構築
•Linuxには、出力画面を選択する DISPLAY変数という物がある、
基本的に、GPU0は :0.0 に設定されている。
•現在のDISPLAY変数は、以下のコマンドで確認できる。
$ env | grep DISPLAY
•SSHのXForwardingを使用しているときのクライアント側の画面
は localhost:10.0 などになってる事が多い.
月曜日22日7月13年
7. Headless X11 構築
•Xは以下のようにディスプレイ番号を指定する事もできる
$ startx -- :0.0
•また、最後に & を付けるとバックグラウンドで開始できる
$ startx -- :0.0 &
•DISPLAY変数を :0.0 にかえるには
$ export DISPLAY=:0.0
月曜日22日7月13年
7. Headless X11 構築
•$ export DISPLAY=:0.0
•$ glxinfo
•OpenGL vendor string などの項目をみる事で、NVIDIAのドライ
バーが読み込まれているかどうかを確認する事ができる。
月曜日22日7月13年
7. Headless X11 構築
•$ glxgears
•97157 frames in 5.0 seconds = 19431.389 FPS
•HWアクセラレーションがしっかりと効いているため、1万を超え
るFPSが出る。
月曜日22日7月13年
8. CUDA 環境構築
•サンプルをmakeする上でglutが必要なのでインストールする
•$ cd ~/Downloads
•$ wget http://mirror.centos.org/centos/6/os/x86_64/Packages/
freeglut-2.6.0-1.el6.x86_64.rpm
•$ wget http://mirror.centos.org/centos/6/os/x86_64/Packages/
freeglut-devel-2.6.0-1.el6.x86_64.rpm
月曜日22日7月13年
8. CUDA 環境構築
•# rpm -ivh freeglut-2.6.0-1.el6.x86_64.rpm freeglut-
devel-2.6.0-1.el6.x86_64.rpm
•これでサンプルをコンパイルする事ができる。
•以降OpenGLが使えるが、古いfreeglutなので、必要なら新しいバ
ージョンを入れる
月曜日22日7月13年
8. CUDA 環境構築
•これよりCUDA 5.0 をインストールするが、ドライバーはインス
トールせずに、Toolkitとサンプルコードのみを入れる。
•$ cd ~/Downloads
•$ wget http://developer.download.nvidia.com/compute/cuda/5_0/
rel-update-1/installers/cuda_5.0.35_linux_64_rhel6.x-1.run
月曜日22日7月13年
8. CUDA 環境構築
•$ chmod +x cuda_5.0.35_linux_64_rhel6.x-1.run
•# ./cuda_5.0.35_linux_64_rhel6.x-1.run
•ライセンスに同意するか聞かれるので、 accept と入力する。
月曜日22日7月13年
8. CUDA 環境構築
•Do you accept the previously read EULA? (accept/decline/quit):
accept
•Install NVIDIA Accelerated Graphics Driver for Linux-x86_64
304.54? ((y)es/(n)o/(q)uit): n
•Install the CUDA 5.0 Toolkit? ((y)es/(n)o/(q)uit): y
•Enter Toolkit Location [ default is /usr/local/cuda-5.0 ]: (Enter)
•Install the CUDA 5.0 Samples? ((y)es/(n)o/(q)uit): y
•Enter CUDA Samples Location [ default is /usr/local/cuda-5.0/
samples ]: (Enter)
月曜日22日7月13年
8. CUDA 環境構築
•sample をコンパイルする
•$ cd /usr/local/cuda-5.0/samples
•# make -k
•MPI環境をインストールしていないので、1部のコンパイルに失敗
するが、無視して進める。
月曜日22日7月13年
8. CUDA 環境構築
•CUDAを使う上で、パスを通さないといけないので以下の文を
~/.bashrc に書いておく
•export PATH=$PATH:/usr/local/cuda-5.0/bin
•export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/
cuda-5.0/lib64
月曜日22日7月13年
8. CUDA 環境構築
•CUDA がしっかりと動作しているか、サンプルを動かしてみて確
認する。
•$ cd /usr/local/cuda-5.0/samples/0_Simple/vectorAddDrv
•$ ./vectorAddDrv
月曜日22日7月13年
8. CUDA 環境構築
•Vector Addition (Driver API)
> Using Device 0: "GeForce [なんとかなんとか]" with Compute
3.5 capability
> findModulePath found file at <./vectorAdd_kernel64.ptx>
> initCUDA loading module: <./vectorAdd_kernel64.ptx>
> PTX JIT log:
•自分の使ってるGPUの名前が出てれば成功です。
月曜日22日7月13年
8. CUDA 環境構築
•複数のGPUを搭載している場合は、複数扱えているかをサンプル
を実行して確認する
•$ cd /usr/local/cuda-5.0/samples/0_Simple/simpleMultiGPU
•$ ./simpleMultiGPU
月曜日22日7月13年
8. CUDA 環境構築
Starting simpleMultiGPU
CUDA-capable device count: 2
Generating input data...
Computing with 2 GPUs...
GPU Processing time: 13.682000 (ms)
Computing with Host CPU...
Comparing GPU and Host CPU results...
GPU sum: 16777280.000000
CPU sum: 16777294.395033
Relative difference: 8.580068E-07
月曜日22日7月13年
8. CUDA 環境構築
•2GPUs と表示されればしっかり機能しているといえる。
•たくさんのGPUを使う場合もほぼ同じかと思われます。
月曜日22日7月13年
9. x11vnc 構築
•x11vncを導入する事でやっと、Linux側の画面を手元のPCに表示
させる事ができます。
•http://www.karlrunge.com/x11vnc/
月曜日22日7月13年
9. x11vnc 構築
•$ cd ~/Downloads
•$ wget http://x11vnc.sourceforge.net/dev/x11vnc-0.9.14-dev.tar.gz
•$ tar -zxvf x11vnc-0.9.13
•$ ./ configure
•$ make
•$ sudo make install
月曜日22日7月13年
9. x11vnc 構築
•以上でインストールは完了する。
•これで、Headless X11 Linux が完成する。
•もう、ディスプレイ、キーボード、マウスは外してしまって大丈
夫!
月曜日22日7月13年
ひとまず完成
月曜日22日7月13年
Headless X11 Linux 使い方
•VNCのソフトウェアは、SSH Tunneling に対応したVNCクライア
ントを使用する。
•Mac OSだと、ChickenというVNCクライアントがSSH Tunneling
にも対応していておすすめです。
http://sourceforge.net/projects/chicken/
•もしくは、手動でSSH Tunneling してください。
月曜日22日7月13年
Headless X11 Linux 使い方 (1)
•まずはサーバーにSSHでログインする。そして以下の二つを実行
•$ startx -- :0.0 &
•$ x11vnc -display :0.0 -forever -auth guess -noxdamage &
•これで二つともバックグラウンドで開始されます。
このコマンド実行後にexitでsshを切断するとプロセスは残るの
で、いちいち立ち上げるのめんどいという人にはいいかも
月曜日22日7月13年
Headless X11 Linux 使い方 (2)
•次にVNCクライアントで、SSH Tunneling を使用してサーバーに
アクセスします。
•Tunnel over SSH などがそうです。
•これで、Headless X11 の画面が手元のPCに送られてきます。
月曜日22日7月13年
Headless X11 Linux 使い方 (3)
•試しに、CUDA の Particles を動かしてみます。
•$ export DISPLAY=:0.0
•$ cd /usr/local/cuda-5.0/samples/5_Simulations/particles/
•$ ./particles
•実行するとVNCの画面にひょうじされるはず。
月曜日22日7月13年
で、Headless X11 Linux で
何ができるの?
月曜日22日7月13年
アドバンテージ
•OpenGL はクロスプラットフォームに対応なので、高速なLinux環
境でデモを作って、あとになってWindowsのバイナリをビルドし
た方が、作業効率的にはいい。
•HWアクセラレーションがしっかり効くので、高速な回線さえあ
れば、ミニノートみたいなPCで開発ができる!
•すごく重い物を作るときは、これを使うとかなりいいかも
月曜日22日7月13年
できなかった事
•VNCでアクセスしてる先で、ターミナルが開けない.
(export DISPLAY=:0.0 とかでコマンドを送ってあげるしかない)
•一部の設定などをすると突然切断されたりする。
•複数ユーザーにそれぞれデスクトップを割り当てる
月曜日22日7月13年
実際にアクセスし、
使ってみます。
月曜日22日7月13年
月曜日22日7月13年
デモ以外の活用法
•ゲームをサーバー側で走らせて、画面だけこっちに表示する
•ベンチマークとかするときに外からいろいろできる。
•ひとつのデスクトップで作業を共有する
•などなど...
月曜日22日7月13年
まとめ
•Linuxの基礎知識があるとHeadless X11 Linuxを構築して、比較的
快適にOpenGLのデモが作成できる。
•環境に依存する事 (CUDAなど) も外で使える。
•デモ以外にも様々な使い道がありそうですね.
月曜日22日7月13年
?
@T_SRTX1911 , @RTX1911
http://rtx1911.net/
月曜日22日7月13年
THANKS
月曜日22日7月13年

Weitere ähnliche Inhalte

Was ist angesagt?

オンラインゲームの仕組みと工夫
オンラインゲームの仕組みと工夫オンラインゲームの仕組みと工夫
オンラインゲームの仕組みと工夫Yuta Imai
 
リッチなドメインモデル 名前探し
リッチなドメインモデル 名前探しリッチなドメインモデル 名前探し
リッチなドメインモデル 名前探し増田 亨
 
Slurmのジョブスケジューリングと実装
Slurmのジョブスケジューリングと実装Slurmのジョブスケジューリングと実装
Slurmのジョブスケジューリングと実装Ryuichi Sakamoto
 
イミュータブルデータモデルの極意
イミュータブルデータモデルの極意イミュータブルデータモデルの極意
イミュータブルデータモデルの極意Yoshitaka Kawashima
 
それはYAGNIか? それとも思考停止か?
それはYAGNIか? それとも思考停止か?それはYAGNIか? それとも思考停止か?
それはYAGNIか? それとも思考停止か?Yoshitaka Kawashima
 
DockerコンテナでGitを使う
DockerコンテナでGitを使うDockerコンテナでGitを使う
DockerコンテナでGitを使うKazuhiro Suga
 
カスタムメモリマネージャと高速なメモリアロケータについて
カスタムメモリマネージャと高速なメモリアロケータについてカスタムメモリマネージャと高速なメモリアロケータについて
カスタムメモリマネージャと高速なメモリアロケータについてalwei
 
入門 Kubeflow ~Kubernetesで機械学習をはじめるために~ (NTT Tech Conference #4 講演資料)
入門 Kubeflow ~Kubernetesで機械学習をはじめるために~ (NTT Tech Conference #4 講演資料)入門 Kubeflow ~Kubernetesで機械学習をはじめるために~ (NTT Tech Conference #4 講演資料)
入門 Kubeflow ~Kubernetesで機械学習をはじめるために~ (NTT Tech Conference #4 講演資料)NTT DATA Technology & Innovation
 
DockerとPodmanの比較
DockerとPodmanの比較DockerとPodmanの比較
DockerとPodmanの比較Akihiro Suda
 
テスト文字列に「うんこ」と入れるな
テスト文字列に「うんこ」と入れるなテスト文字列に「うんこ」と入れるな
テスト文字列に「うんこ」と入れるなKentaro Matsui
 
分散システムの限界について知ろう
分散システムの限界について知ろう分散システムの限界について知ろう
分散システムの限界について知ろうShingo Omura
 
エンジニアの個人ブランディングと技術組織
エンジニアの個人ブランディングと技術組織エンジニアの個人ブランディングと技術組織
エンジニアの個人ブランディングと技術組織Takafumi ONAKA
 
Java でつくる 低レイテンシ実装の技巧
Java でつくる低レイテンシ実装の技巧Java でつくる低レイテンシ実装の技巧
Java でつくる 低レイテンシ実装の技巧 Ryosuke Yamazaki
 
マイクロにしすぎた結果がこれだよ!
マイクロにしすぎた結果がこれだよ!マイクロにしすぎた結果がこれだよ!
マイクロにしすぎた結果がこれだよ!mosa siru
 
メルカリ・ソウゾウでは どうGoを活用しているのか?
メルカリ・ソウゾウでは どうGoを活用しているのか?メルカリ・ソウゾウでは どうGoを活用しているのか?
メルカリ・ソウゾウでは どうGoを活用しているのか?Takuya Ueda
 
君はyarn.lockをコミットしているか?
君はyarn.lockをコミットしているか?君はyarn.lockをコミットしているか?
君はyarn.lockをコミットしているか?Teppei Sato
 
Dockerからcontainerdへの移行
Dockerからcontainerdへの移行Dockerからcontainerdへの移行
Dockerからcontainerdへの移行Akihiro Suda
 

Was ist angesagt? (20)

オンラインゲームの仕組みと工夫
オンラインゲームの仕組みと工夫オンラインゲームの仕組みと工夫
オンラインゲームの仕組みと工夫
 
リッチなドメインモデル 名前探し
リッチなドメインモデル 名前探しリッチなドメインモデル 名前探し
リッチなドメインモデル 名前探し
 
Slurmのジョブスケジューリングと実装
Slurmのジョブスケジューリングと実装Slurmのジョブスケジューリングと実装
Slurmのジョブスケジューリングと実装
 
Oss貢献超入門
Oss貢献超入門Oss貢献超入門
Oss貢献超入門
 
イミュータブルデータモデルの極意
イミュータブルデータモデルの極意イミュータブルデータモデルの極意
イミュータブルデータモデルの極意
 
それはYAGNIか? それとも思考停止か?
それはYAGNIか? それとも思考停止か?それはYAGNIか? それとも思考停止か?
それはYAGNIか? それとも思考停止か?
 
DockerコンテナでGitを使う
DockerコンテナでGitを使うDockerコンテナでGitを使う
DockerコンテナでGitを使う
 
カスタムメモリマネージャと高速なメモリアロケータについて
カスタムメモリマネージャと高速なメモリアロケータについてカスタムメモリマネージャと高速なメモリアロケータについて
カスタムメモリマネージャと高速なメモリアロケータについて
 
入門 Kubeflow ~Kubernetesで機械学習をはじめるために~ (NTT Tech Conference #4 講演資料)
入門 Kubeflow ~Kubernetesで機械学習をはじめるために~ (NTT Tech Conference #4 講演資料)入門 Kubeflow ~Kubernetesで機械学習をはじめるために~ (NTT Tech Conference #4 講演資料)
入門 Kubeflow ~Kubernetesで機械学習をはじめるために~ (NTT Tech Conference #4 講演資料)
 
DockerとPodmanの比較
DockerとPodmanの比較DockerとPodmanの比較
DockerとPodmanの比較
 
テスト文字列に「うんこ」と入れるな
テスト文字列に「うんこ」と入れるなテスト文字列に「うんこ」と入れるな
テスト文字列に「うんこ」と入れるな
 
分散システムの限界について知ろう
分散システムの限界について知ろう分散システムの限界について知ろう
分散システムの限界について知ろう
 
MLOps入門
MLOps入門MLOps入門
MLOps入門
 
エンジニアの個人ブランディングと技術組織
エンジニアの個人ブランディングと技術組織エンジニアの個人ブランディングと技術組織
エンジニアの個人ブランディングと技術組織
 
Java でつくる 低レイテンシ実装の技巧
Java でつくる低レイテンシ実装の技巧Java でつくる低レイテンシ実装の技巧
Java でつくる 低レイテンシ実装の技巧
 
マイクロにしすぎた結果がこれだよ!
マイクロにしすぎた結果がこれだよ!マイクロにしすぎた結果がこれだよ!
マイクロにしすぎた結果がこれだよ!
 
Guide To AGPL
Guide To AGPLGuide To AGPL
Guide To AGPL
 
メルカリ・ソウゾウでは どうGoを活用しているのか?
メルカリ・ソウゾウでは どうGoを活用しているのか?メルカリ・ソウゾウでは どうGoを活用しているのか?
メルカリ・ソウゾウでは どうGoを活用しているのか?
 
君はyarn.lockをコミットしているか?
君はyarn.lockをコミットしているか?君はyarn.lockをコミットしているか?
君はyarn.lockをコミットしているか?
 
Dockerからcontainerdへの移行
Dockerからcontainerdへの移行Dockerからcontainerdへの移行
Dockerからcontainerdへの移行
 

Andere mochten auch

グラフィックスの仮想化を実現する NVIDIA GRID™ ~仮想マシンからの GPU の利用方法と、今後の展開~
グラフィックスの仮想化を実現する NVIDIA GRID™ ~仮想マシンからの GPU の利用方法と、今後の展開~グラフィックスの仮想化を実現する NVIDIA GRID™ ~仮想マシンからの GPU の利用方法と、今後の展開~
グラフィックスの仮想化を実現する NVIDIA GRID™ ~仮想マシンからの GPU の利用方法と、今後の展開~Dell TechCenter Japan
 
AWSとGPUインスタンスのご紹介
AWSとGPUインスタンスのご紹介AWSとGPUインスタンスのご紹介
AWSとGPUインスタンスのご紹介Yasuhiro Matsuo
 
DLフレームワークChainerの紹介と分散深層強化学習によるロボット制御
DLフレームワークChainerの紹介と分散深層強化学習によるロボット制御DLフレームワークChainerの紹介と分散深層強化学習によるロボット制御
DLフレームワークChainerの紹介と分散深層強化学習によるロボット制御Ryosuke Okuta
 
なぜGPUはディープラーニングに向いているか
なぜGPUはディープラーニングに向いているかなぜGPUはディープラーニングに向いているか
なぜGPUはディープラーニングに向いているかNVIDIA Japan
 
超簡単でハイセンスな表紙スライドの作り方
超簡単でハイセンスな表紙スライドの作り方超簡単でハイセンスな表紙スライドの作り方
超簡単でハイセンスな表紙スライドの作り方MOCKS | Yuta Morishige
 
【プレゼン】見やすいプレゼン資料の作り方【初心者用】
【プレゼン】見やすいプレゼン資料の作り方【初心者用】【プレゼン】見やすいプレゼン資料の作り方【初心者用】
【プレゼン】見やすいプレゼン資料の作り方【初心者用】MOCKS | Yuta Morishige
 
見やすいプレゼン資料の作り方 - リニューアル増量版
見やすいプレゼン資料の作り方 - リニューアル増量版見やすいプレゼン資料の作り方 - リニューアル増量版
見やすいプレゼン資料の作り方 - リニューアル増量版MOCKS | Yuta Morishige
 
How to Make Awesome SlideShares: Tips & Tricks
How to Make Awesome SlideShares: Tips & TricksHow to Make Awesome SlideShares: Tips & Tricks
How to Make Awesome SlideShares: Tips & TricksSlideShare
 
Getting Started With SlideShare
Getting Started With SlideShareGetting Started With SlideShare
Getting Started With SlideShareSlideShare
 

Andere mochten auch (10)

グラフィックスの仮想化を実現する NVIDIA GRID™ ~仮想マシンからの GPU の利用方法と、今後の展開~
グラフィックスの仮想化を実現する NVIDIA GRID™ ~仮想マシンからの GPU の利用方法と、今後の展開~グラフィックスの仮想化を実現する NVIDIA GRID™ ~仮想マシンからの GPU の利用方法と、今後の展開~
グラフィックスの仮想化を実現する NVIDIA GRID™ ~仮想マシンからの GPU の利用方法と、今後の展開~
 
Dell VGX solution
Dell VGX solutionDell VGX solution
Dell VGX solution
 
AWSとGPUインスタンスのご紹介
AWSとGPUインスタンスのご紹介AWSとGPUインスタンスのご紹介
AWSとGPUインスタンスのご紹介
 
DLフレームワークChainerの紹介と分散深層強化学習によるロボット制御
DLフレームワークChainerの紹介と分散深層強化学習によるロボット制御DLフレームワークChainerの紹介と分散深層強化学習によるロボット制御
DLフレームワークChainerの紹介と分散深層強化学習によるロボット制御
 
なぜGPUはディープラーニングに向いているか
なぜGPUはディープラーニングに向いているかなぜGPUはディープラーニングに向いているか
なぜGPUはディープラーニングに向いているか
 
超簡単でハイセンスな表紙スライドの作り方
超簡単でハイセンスな表紙スライドの作り方超簡単でハイセンスな表紙スライドの作り方
超簡単でハイセンスな表紙スライドの作り方
 
【プレゼン】見やすいプレゼン資料の作り方【初心者用】
【プレゼン】見やすいプレゼン資料の作り方【初心者用】【プレゼン】見やすいプレゼン資料の作り方【初心者用】
【プレゼン】見やすいプレゼン資料の作り方【初心者用】
 
見やすいプレゼン資料の作り方 - リニューアル増量版
見やすいプレゼン資料の作り方 - リニューアル増量版見やすいプレゼン資料の作り方 - リニューアル増量版
見やすいプレゼン資料の作り方 - リニューアル増量版
 
How to Make Awesome SlideShares: Tips & Tricks
How to Make Awesome SlideShares: Tips & TricksHow to Make Awesome SlideShares: Tips & Tricks
How to Make Awesome SlideShares: Tips & Tricks
 
Getting Started With SlideShare
Getting Started With SlideShareGetting Started With SlideShare
Getting Started With SlideShare
 

Ähnlich wie NVIDIA GPUで作るHeadless X11 Linux

Djangoとweb2pyをapacheに組込む
Djangoとweb2pyをapacheに組込むDjangoとweb2pyをapacheに組込む
Djangoとweb2pyをapacheに組込む2bo 2bo
 
Chromium androidビルド
Chromium androidビルドChromium androidビルド
Chromium androidビルドHiroshi Sakate
 
オープン・ソースで構築するARMマイコン開発環境 ―― GCC,Eclipse,OpenOCDで統合開発環境,JTAGデバッグもできる!
オープン・ソースで構築するARMマイコン開発環境 ―― GCC,Eclipse,OpenOCDで統合開発環境,JTAGデバッグもできる!オープン・ソースで構築するARMマイコン開発環境 ―― GCC,Eclipse,OpenOCDで統合開発環境,JTAGデバッグもできる!
オープン・ソースで構築するARMマイコン開発環境 ―― GCC,Eclipse,OpenOCDで統合開発環境,JTAGデバッグもできる!Masaki Muranaka
 
Cq tse-fm3セミナー資料
Cq tse-fm3セミナー資料Cq tse-fm3セミナー資料
Cq tse-fm3セミナー資料Masaki Muranaka
 
2017年05月27日 AITCシニア技術者勉強会 第6回「OpenCV入門」
2017年05月27日 AITCシニア技術者勉強会 第6回「OpenCV入門」2017年05月27日 AITCシニア技術者勉強会 第6回「OpenCV入門」
2017年05月27日 AITCシニア技術者勉強会 第6回「OpenCV入門」aitc_jp
 
Nseg20120825
Nseg20120825Nseg20120825
Nseg20120825hiro345
 
YugabyteDBを使ってみよう(NewSQL/分散SQLデータベースよろず勉強会 #1 発表資料)
YugabyteDBを使ってみよう(NewSQL/分散SQLデータベースよろず勉強会 #1 発表資料)YugabyteDBを使ってみよう(NewSQL/分散SQLデータベースよろず勉強会 #1 発表資料)
YugabyteDBを使ってみよう(NewSQL/分散SQLデータベースよろず勉強会 #1 発表資料)NTT DATA Technology & Innovation
 
Dockerを使ってみよう
Dockerを使ってみようDockerを使ってみよう
Dockerを使ってみようRyo Adachi
 
Building production server on docker
Building production server on dockerBuilding production server on docker
Building production server on dockerHiroshi Miura
 
Building production server on docker
Building production server on dockerBuilding production server on docker
Building production server on dockerHiroshi Miura
 
RでGPU使ってみた
RでGPU使ってみたRでGPU使ってみた
RでGPU使ってみたKazuya Wada
 
Native Extensionのビルドどうしてますか?
Native Extensionのビルドどうしてますか?Native Extensionのビルドどうしてますか?
Native Extensionのビルドどうしてますか?Misao X
 
DOSBox for beginners はじめてのDOSBox
DOSBox for beginners はじめてのDOSBoxDOSBox for beginners はじめてのDOSBox
DOSBox for beginners はじめてのDOSBoxNetwalker lab kapper
 
Displaylink : Reloaded
Displaylink : ReloadedDisplaylink : Reloaded
Displaylink : ReloadedMasataka Kondo
 
20130126 第2回福岡debian勉強会 debian wheezyとdebian installerのはなし
20130126 第2回福岡debian勉強会 debian wheezyとdebian installerのはなし20130126 第2回福岡debian勉強会 debian wheezyとdebian installerのはなし
20130126 第2回福岡debian勉強会 debian wheezyとdebian installerのはなしTsuyoshi Yamada
 
OpenStackでつくる開発環境と外道塾
OpenStackでつくる開発環境と外道塾OpenStackでつくる開発環境と外道塾
OpenStackでつくる開発環境と外道塾外道 父
 
もろもろの AI ツールを Windows のローカル環境にインストールする手順
もろもろの AI ツールを Windows のローカル環境にインストールする手順もろもろの AI ツールを Windows のローカル環境にインストールする手順
もろもろの AI ツールを Windows のローカル環境にインストールする手順Hide Koba
 
組込みAndroid入門実習
組込みAndroid入門実習組込みAndroid入門実習
組込みAndroid入門実習ksk sue
 
Docker on RHEL & Project Atomic 入門 - #Dockerjp 4
Docker on RHEL & Project Atomic 入門 - #Dockerjp 4Docker on RHEL & Project Atomic 入門 - #Dockerjp 4
Docker on RHEL & Project Atomic 入門 - #Dockerjp 4Emma Haruka Iwao
 

Ähnlich wie NVIDIA GPUで作るHeadless X11 Linux (20)

Djangoとweb2pyをapacheに組込む
Djangoとweb2pyをapacheに組込むDjangoとweb2pyをapacheに組込む
Djangoとweb2pyをapacheに組込む
 
Chromium androidビルド
Chromium androidビルドChromium androidビルド
Chromium androidビルド
 
オープン・ソースで構築するARMマイコン開発環境 ―― GCC,Eclipse,OpenOCDで統合開発環境,JTAGデバッグもできる!
オープン・ソースで構築するARMマイコン開発環境 ―― GCC,Eclipse,OpenOCDで統合開発環境,JTAGデバッグもできる!オープン・ソースで構築するARMマイコン開発環境 ―― GCC,Eclipse,OpenOCDで統合開発環境,JTAGデバッグもできる!
オープン・ソースで構築するARMマイコン開発環境 ―― GCC,Eclipse,OpenOCDで統合開発環境,JTAGデバッグもできる!
 
Cq tse-fm3セミナー資料
Cq tse-fm3セミナー資料Cq tse-fm3セミナー資料
Cq tse-fm3セミナー資料
 
2017年05月27日 AITCシニア技術者勉強会 第6回「OpenCV入門」
2017年05月27日 AITCシニア技術者勉強会 第6回「OpenCV入門」2017年05月27日 AITCシニア技術者勉強会 第6回「OpenCV入門」
2017年05月27日 AITCシニア技術者勉強会 第6回「OpenCV入門」
 
Nseg20120825
Nseg20120825Nseg20120825
Nseg20120825
 
YugabyteDBを使ってみよう(NewSQL/分散SQLデータベースよろず勉強会 #1 発表資料)
YugabyteDBを使ってみよう(NewSQL/分散SQLデータベースよろず勉強会 #1 発表資料)YugabyteDBを使ってみよう(NewSQL/分散SQLデータベースよろず勉強会 #1 発表資料)
YugabyteDBを使ってみよう(NewSQL/分散SQLデータベースよろず勉強会 #1 発表資料)
 
Dockerを使ってみよう
Dockerを使ってみようDockerを使ってみよう
Dockerを使ってみよう
 
Building production server on docker
Building production server on dockerBuilding production server on docker
Building production server on docker
 
Building production server on docker
Building production server on dockerBuilding production server on docker
Building production server on docker
 
RでGPU使ってみた
RでGPU使ってみたRでGPU使ってみた
RでGPU使ってみた
 
Native Extensionのビルドどうしてますか?
Native Extensionのビルドどうしてますか?Native Extensionのビルドどうしてますか?
Native Extensionのビルドどうしてますか?
 
実は怖くないDevOps
実は怖くないDevOps実は怖くないDevOps
実は怖くないDevOps
 
DOSBox for beginners はじめてのDOSBox
DOSBox for beginners はじめてのDOSBoxDOSBox for beginners はじめてのDOSBox
DOSBox for beginners はじめてのDOSBox
 
Displaylink : Reloaded
Displaylink : ReloadedDisplaylink : Reloaded
Displaylink : Reloaded
 
20130126 第2回福岡debian勉強会 debian wheezyとdebian installerのはなし
20130126 第2回福岡debian勉強会 debian wheezyとdebian installerのはなし20130126 第2回福岡debian勉強会 debian wheezyとdebian installerのはなし
20130126 第2回福岡debian勉強会 debian wheezyとdebian installerのはなし
 
OpenStackでつくる開発環境と外道塾
OpenStackでつくる開発環境と外道塾OpenStackでつくる開発環境と外道塾
OpenStackでつくる開発環境と外道塾
 
もろもろの AI ツールを Windows のローカル環境にインストールする手順
もろもろの AI ツールを Windows のローカル環境にインストールする手順もろもろの AI ツールを Windows のローカル環境にインストールする手順
もろもろの AI ツールを Windows のローカル環境にインストールする手順
 
組込みAndroid入門実習
組込みAndroid入門実習組込みAndroid入門実習
組込みAndroid入門実習
 
Docker on RHEL & Project Atomic 入門 - #Dockerjp 4
Docker on RHEL & Project Atomic 入門 - #Dockerjp 4Docker on RHEL & Project Atomic 入門 - #Dockerjp 4
Docker on RHEL & Project Atomic 入門 - #Dockerjp 4
 

Kürzlich hochgeladen

Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Yuma Ohgami
 
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略Ryo Sasaki
 
論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNetToru Tamaki
 
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)Hiroki Ichikura
 
TSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdfTSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdftaisei2219
 
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...Toru Tamaki
 
SOPを理解する 2024/04/19 の勉強会で発表されたものです
SOPを理解する       2024/04/19 の勉強会で発表されたものですSOPを理解する       2024/04/19 の勉強会で発表されたものです
SOPを理解する 2024/04/19 の勉強会で発表されたものですiPride Co., Ltd.
 
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムスマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムsugiuralab
 
論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A surveyToru Tamaki
 

Kürzlich hochgeladen (9)

Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
 
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
 
論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet
 
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
 
TSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdfTSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdf
 
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
 
SOPを理解する 2024/04/19 の勉強会で発表されたものです
SOPを理解する       2024/04/19 の勉強会で発表されたものですSOPを理解する       2024/04/19 の勉強会で発表されたものです
SOPを理解する 2024/04/19 の勉強会で発表されたものです
 
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムスマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システム
 
論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey
 

NVIDIA GPUで作るHeadless X11 Linux