Recommended
ODP
PDF
PDF
PDF
Kubernetes 初心者の僕からの JKD 参加報告
PDF
enterprise grails challenge, 2013 Summer
PDF
PDF
PPTX
Chunked encoding を使った高速化の考察
PDF
hooks riverpod + state notifier + freezed でのドメイン駆動設計
PDF
Using asimdhp (fp16) on Jetson Xavier CPU
PDF
PPTX
【東京Node学園祭2016】Node.js × Babel で AWS Lambda アプリケーションを開発する
PDF
openSUSEで作る仮想化環境 -KVM,Xen,Docker 仮想化技術選択のポイント -. /oscnagoya2018
PDF
PDF
ODP
PDF
PDF
PDF
PDF
IIJlab seminar - Linux Kernel Library: Reusable monolithic kernel (in Japanese)
PDF
JellyBeanのソースをとりあえず眺めてみた(手抜き)
PDF
はじめてのUserLAnd。AndroidでUbuntu,Debian ArchLinuxなどをprootで動かそう Beginner for inst...
PDF
Getting Started GraalVM (再アップロード)
PDF
Getting Started GraalVM / GraalVM超入門 #jjug_ccc #ccc_c2
PDF
PDF
はじめての980円ジャンクガラホ改造, UserLAndとTermuxでUbuntuなどLinux動作 Beginner for UserLAnd a...
PDF
ODP
ODP
PDF
clu2cは64ビットOSでも使えます (OSC 2012 Hiroshima LT用資料)
More Related Content
ODP
PDF
PDF
PDF
Kubernetes 初心者の僕からの JKD 参加報告
PDF
enterprise grails challenge, 2013 Summer
PDF
PDF
PPTX
Chunked encoding を使った高速化の考察
What's hot
PDF
hooks riverpod + state notifier + freezed でのドメイン駆動設計
PDF
Using asimdhp (fp16) on Jetson Xavier CPU
PDF
PPTX
【東京Node学園祭2016】Node.js × Babel で AWS Lambda アプリケーションを開発する
PDF
openSUSEで作る仮想化環境 -KVM,Xen,Docker 仮想化技術選択のポイント -. /oscnagoya2018
PDF
PDF
Similar to GDKとLLVM(横浜PF部向け)
ODP
PDF
PDF
PDF
PDF
IIJlab seminar - Linux Kernel Library: Reusable monolithic kernel (in Japanese)
PDF
JellyBeanのソースをとりあえず眺めてみた(手抜き)
PDF
はじめてのUserLAnd。AndroidでUbuntu,Debian ArchLinuxなどをprootで動かそう Beginner for inst...
PDF
Getting Started GraalVM (再アップロード)
PDF
Getting Started GraalVM / GraalVM超入門 #jjug_ccc #ccc_c2
PDF
PDF
はじめての980円ジャンクガラホ改造, UserLAndとTermuxでUbuntuなどLinux動作 Beginner for UserLAnd a...
PDF
ODP
ODP
PDF
clu2cは64ビットOSでも使えます (OSC 2012 Hiroshima LT用資料)
PDF
PPTX
PDF
PDF
PDF
More from demuyan
PDF
PDF
PDF
PDF
PDF
PDF
ZIP
ZIP
PDF
Android & BeagleBoardで組込入門
PDF
PDF
PDF
PDF
PDF
Yet Another Development Language
GDKとLLVM(横浜PF部向け) 1. GDKとLLVM
(横浜PF部向け)
でむら なりかず
Jan 27, 2013
2. 自己紹介
●
黄色とげとげの人です
(@checkela)
– 富山から飛行機に乗ってやって来
ました
– 無事に飛んでよかったです(笑)
●
コード書いたり、本書いたりし
ています
– 文章を書く量 < コードを書く量
が今年の目標
Jan 27, 2013
3. NDK本第2版
数少ないNDK本の一つ。
昨年末に発売になりました
買ってね
http://www.amazon.co.jp/gp/product/4798036307
Jan 27, 2013
4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. GDKとは
●
NDKの後継開発キット
●
キモはgcc → LLVM/clang
Jan 27, 2013
16. LLVM/clang
エルエルブイエム クラン(グ)
と読みます と読みます
Jan 27, 2013
17. 18. LLVM =
LowLevelVirtualMachine
低レイヤー向け仮想マシン
CPUをVM化したような感じ
コンパイル、リンク、ランタイム
全部面倒見るよ!
Jan 27, 2013
19. 20. LLVMのうれしい点
●
CPUアーキテクチャ、言語から独立
●
ライセンスがBSDライセンス似
– University of Illinois Open Source
License
●
JIT、AOT、GCがある
– 普通のCPUよりスゴイ!
Jan 27, 2013
21. 22. Clang
=
(荒っぽく言うと)
gcc互換
フロントエンド
Jan 27, 2013
23. 24. 25. RenderScript
Renderscript provides a
platform-independent
computation engine that
operates at the native level.
LLVMが裏で支えているから
Jan 27, 2013
26. 27. GDK
=
NDKの後継開発キット
Jan 27, 2013
28. 29. gdk-buildのコメント
gdk関連のコードをビルドするため
のコマンド
# Ensure we get the full path of this script's directory
# this is needed if the caller uses the -C <path> GNU Make
# option, as in:
#
# cd ndk
# ./ndk-build -C <project-path>
#
Jan 27, 2013
30. 31. 32. 33. 34. 35. JNIを利用しないから!
JNI(NDK)利用時
#include <jni.h>
jint
Java_com_example_HelloLLVM_addValues( JNIEnv*
env,jobject thiz, jint a, jint b )
{
return a + b;
}
GDK利用時
int addValues(int a, int b){
return a+b;
Jan 27, 2013 }
36. (3)
ソフトが高速化する
(らしい)
Jan 27, 2013
37. gcc vs LLVM
●
NDKサンプルPlasmaで検証した例
LLVMでは80 fps,
約4倍の高速化!
●
●
GCCでは19 fps.
●
Nexus Sにて
http://www.kandroid.org/board/data/board/conference/file_in_body/1/610th_kandroidllvmclang.pdf
Jan 27, 2013
38. 39. 40. (1)Android NDKr8cより
Clang3.1をサポート(実験的に)
http://developer.android.com/tools/sdk/ndk/index.html
Jan 27, 2013
41. 42. 43. 44. 45. 46. FreeBSD 10-CURRENTより
デフォルトコンパライラが
LLVM/clangへ移行
http://gihyo.jp/admin/clip/01/fdt/201211/12
Jan 27, 2013
47. 理由
GPLv3がFreeBSDの
目標と合わない
http://unix.stackexchange.com/questions/49906/why-is-freebsd-deprecating-
gcc-in-favor-of-clang-llvm
http://news.mynavi.jp/articles/2010/05/25/bsdcan01/index.html
Jan 27, 2013
48. 49. Embedded Linux
Conference 2013
LLVMLinux: Compiling the
Linux Kernel with LLVM
Jan 27, 2013
50. LLVMの
ハードウェア化
Jan 27, 2013
51. 52. 53. 54.