Soumettre la recherche
Mettre en ligne
DartVM on Android
•
3 j'aime
•
1,987 vues
N
nothingcosmos
Suivre
Yokohamapf25 nothingcosmos
Lire moins
Lire la suite
Signaler
Partager
Signaler
Partager
1 sur 22
Télécharger maintenant
Télécharger pour lire hors ligne
Recommandé
高位合成ツールVivado hlsのopen cv対応
高位合成ツールVivado hlsのopen cv対応
marsee101
Vivado hlsのシミュレーションとhlsストリーム
Vivado hlsのシミュレーションとhlsストリーム
marsee101
ZynqMPのQEMU
ZynqMPのQEMU
Mr. Vengineer
Synverll
Synverll
Hidemi Ishihara
Zynq VIPを利用したテストベンチ
Zynq VIPを利用したテストベンチ
Mr. Vengineer
Cvim saisentan 半精度浮動小数点数 half
Cvim saisentan 半精度浮動小数点数 half
tomoaki0705
Vivado hls勉強会1(基礎編)
Vivado hls勉強会1(基礎編)
marsee101
GoCon 2015 Summer GoのASTをいじくって新しいツールを作る
GoCon 2015 Summer GoのASTをいじくって新しいツールを作る
Masahiro Wakame
Recommandé
高位合成ツールVivado hlsのopen cv対応
高位合成ツールVivado hlsのopen cv対応
marsee101
Vivado hlsのシミュレーションとhlsストリーム
Vivado hlsのシミュレーションとhlsストリーム
marsee101
ZynqMPのQEMU
ZynqMPのQEMU
Mr. Vengineer
Synverll
Synverll
Hidemi Ishihara
Zynq VIPを利用したテストベンチ
Zynq VIPを利用したテストベンチ
Mr. Vengineer
Cvim saisentan 半精度浮動小数点数 half
Cvim saisentan 半精度浮動小数点数 half
tomoaki0705
Vivado hls勉強会1(基礎編)
Vivado hls勉強会1(基礎編)
marsee101
GoCon 2015 Summer GoのASTをいじくって新しいツールを作る
GoCon 2015 Summer GoのASTをいじくって新しいツールを作る
Masahiro Wakame
Vivado hls勉強会4(axi4 master)
Vivado hls勉強会4(axi4 master)
marsee101
「FPGA 開発入門:FPGA を用いたエッジ AI の高速化手法を学ぶ」
「FPGA 開発入門:FPGA を用いたエッジ AI の高速化手法を学ぶ」
直久 住川
Gpgpu tomoaki-fp16
Gpgpu tomoaki-fp16
tomoaki0705
こんにちはGroovy
こんにちはGroovy
irof N
LLVM overview 20110122
LLVM overview 20110122
nothingcosmos
FPGAアクセラレータの作り方
FPGAアクセラレータの作り方
Mr. Vengineer
バグベアード入門
バグベアード入門
道化師 堂華
ACRiウェビナー:岩渕様ご講演資料
ACRiウェビナー:岩渕様ご講演資料
直久 住川
GoogleのSHA-1のはなし
GoogleのSHA-1のはなし
MITSUNARI Shigeo
2014年の社内新人教育テキスト #2(関数型言語からオブジェクト指向言語へ)
2014年の社内新人教育テキスト #2(関数型言語からオブジェクト指向言語へ)
Shin-ya Koga
SDSoC勉強会_170128_スライド「SDx 2016.3のプラグマによるハードウェアと性能」
SDSoC勉強会_170128_スライド「SDx 2016.3のプラグマによるハードウェアと性能」
marsee101
Dive into RTS - another side
Dive into RTS - another side
Kiwamu Okabe
Starting qt5beta at_raspberry_pi Qtnagoya#6
Starting qt5beta at_raspberry_pi Qtnagoya#6
Kazuo Asano (@kazuo_asa)
2021 10-12.linx device-tree
2021 10-12.linx device-tree
Shin-ya Koga
PYNQ祭り
PYNQ祭り
Mr. Vengineer
ZeroFormatter/MagicOnion - Fastest C# Serializer/gRPC based C# RPC
ZeroFormatter/MagicOnion - Fastest C# Serializer/gRPC based C# RPC
Yoshifumi Kawai
Pynq祭り資料
Pynq祭り資料
一路 川染
Takep lpc1114-190614
Takep lpc1114-190614
たけおか しょうぞう
Read Groovy Compile process(Groovy Benkyoukai 2013)
Read Groovy Compile process(Groovy Benkyoukai 2013)
Uehara Junji
【Unite Tokyo 2019】Understanding C# Struct All Things
【Unite Tokyo 2019】Understanding C# Struct All Things
UnityTechnologiesJapan002
Droid con 2012 bangalore v2.0
Droid con 2012 bangalore v2.0
Premchander Rao
310 lecture 10
310 lecture 10
Gale Pooley
Contenu connexe
Tendances
Vivado hls勉強会4(axi4 master)
Vivado hls勉強会4(axi4 master)
marsee101
「FPGA 開発入門:FPGA を用いたエッジ AI の高速化手法を学ぶ」
「FPGA 開発入門:FPGA を用いたエッジ AI の高速化手法を学ぶ」
直久 住川
Gpgpu tomoaki-fp16
Gpgpu tomoaki-fp16
tomoaki0705
こんにちはGroovy
こんにちはGroovy
irof N
LLVM overview 20110122
LLVM overview 20110122
nothingcosmos
FPGAアクセラレータの作り方
FPGAアクセラレータの作り方
Mr. Vengineer
バグベアード入門
バグベアード入門
道化師 堂華
ACRiウェビナー:岩渕様ご講演資料
ACRiウェビナー:岩渕様ご講演資料
直久 住川
GoogleのSHA-1のはなし
GoogleのSHA-1のはなし
MITSUNARI Shigeo
2014年の社内新人教育テキスト #2(関数型言語からオブジェクト指向言語へ)
2014年の社内新人教育テキスト #2(関数型言語からオブジェクト指向言語へ)
Shin-ya Koga
SDSoC勉強会_170128_スライド「SDx 2016.3のプラグマによるハードウェアと性能」
SDSoC勉強会_170128_スライド「SDx 2016.3のプラグマによるハードウェアと性能」
marsee101
Dive into RTS - another side
Dive into RTS - another side
Kiwamu Okabe
Starting qt5beta at_raspberry_pi Qtnagoya#6
Starting qt5beta at_raspberry_pi Qtnagoya#6
Kazuo Asano (@kazuo_asa)
2021 10-12.linx device-tree
2021 10-12.linx device-tree
Shin-ya Koga
PYNQ祭り
PYNQ祭り
Mr. Vengineer
ZeroFormatter/MagicOnion - Fastest C# Serializer/gRPC based C# RPC
ZeroFormatter/MagicOnion - Fastest C# Serializer/gRPC based C# RPC
Yoshifumi Kawai
Pynq祭り資料
Pynq祭り資料
一路 川染
Takep lpc1114-190614
Takep lpc1114-190614
たけおか しょうぞう
Read Groovy Compile process(Groovy Benkyoukai 2013)
Read Groovy Compile process(Groovy Benkyoukai 2013)
Uehara Junji
【Unite Tokyo 2019】Understanding C# Struct All Things
【Unite Tokyo 2019】Understanding C# Struct All Things
UnityTechnologiesJapan002
Tendances
(20)
Vivado hls勉強会4(axi4 master)
Vivado hls勉強会4(axi4 master)
「FPGA 開発入門:FPGA を用いたエッジ AI の高速化手法を学ぶ」
「FPGA 開発入門:FPGA を用いたエッジ AI の高速化手法を学ぶ」
Gpgpu tomoaki-fp16
Gpgpu tomoaki-fp16
こんにちはGroovy
こんにちはGroovy
LLVM overview 20110122
LLVM overview 20110122
FPGAアクセラレータの作り方
FPGAアクセラレータの作り方
バグベアード入門
バグベアード入門
ACRiウェビナー:岩渕様ご講演資料
ACRiウェビナー:岩渕様ご講演資料
GoogleのSHA-1のはなし
GoogleのSHA-1のはなし
2014年の社内新人教育テキスト #2(関数型言語からオブジェクト指向言語へ)
2014年の社内新人教育テキスト #2(関数型言語からオブジェクト指向言語へ)
SDSoC勉強会_170128_スライド「SDx 2016.3のプラグマによるハードウェアと性能」
SDSoC勉強会_170128_スライド「SDx 2016.3のプラグマによるハードウェアと性能」
Dive into RTS - another side
Dive into RTS - another side
Starting qt5beta at_raspberry_pi Qtnagoya#6
Starting qt5beta at_raspberry_pi Qtnagoya#6
2021 10-12.linx device-tree
2021 10-12.linx device-tree
PYNQ祭り
PYNQ祭り
ZeroFormatter/MagicOnion - Fastest C# Serializer/gRPC based C# RPC
ZeroFormatter/MagicOnion - Fastest C# Serializer/gRPC based C# RPC
Pynq祭り資料
Pynq祭り資料
Takep lpc1114-190614
Takep lpc1114-190614
Read Groovy Compile process(Groovy Benkyoukai 2013)
Read Groovy Compile process(Groovy Benkyoukai 2013)
【Unite Tokyo 2019】Understanding C# Struct All Things
【Unite Tokyo 2019】Understanding C# Struct All Things
En vedette
Droid con 2012 bangalore v2.0
Droid con 2012 bangalore v2.0
Premchander Rao
310 lecture 10
310 lecture 10
Gale Pooley
AdReaction - Ghana
AdReaction - Ghana
Kantar
It's a Mod World - A Practical Guide to Rocking Modernizr
It's a Mod World - A Practical Guide to Rocking Modernizr
Michael Enslow
PPL Local roots-global reach 0711
PPL Local roots-global reach 0711
PPL Corporation, Allentown, PA.
Why Is It Always Volume Before Price?
Why Is It Always Volume Before Price?
Kantar
Media pitch chris & luke
Media pitch chris & luke
salesianas2011
Size finder
Size finder
T N
Template chinese version
Template chinese version
Ddloveaa Chan
6 oct esport i valors
6 oct esport i valors
xaviruiz74
Musica E Sport Roma
Musica E Sport Roma
vivifris
Natsumesoseki kokoro
Natsumesoseki kokoro
JunichiTaniguchi
Ogrody wertykalne
Ogrody wertykalne
Umberto Pacheco
Media movie1
Media movie1
salesianas2011
Changing Channels with Confidence - Nigeria 2013
Changing Channels with Confidence - Nigeria 2013
Kantar
Signa designer residences
Signa designer residences
Norman Garcia
Sii. .Cz.Prezentace.2010.Small
Sii. .Cz.Prezentace.2010.Small
JerryFishlet
Media Presentation33
Media Presentation33
salesianas2011
Lecture 10 basic tools of finance
Lecture 10 basic tools of finance
Gale Pooley
Real Estate Market Report | Magnolia Tx
Real Estate Market Report | Magnolia Tx
Tanya Lavoie Bugbee
En vedette
(20)
Droid con 2012 bangalore v2.0
Droid con 2012 bangalore v2.0
310 lecture 10
310 lecture 10
AdReaction - Ghana
AdReaction - Ghana
It's a Mod World - A Practical Guide to Rocking Modernizr
It's a Mod World - A Practical Guide to Rocking Modernizr
PPL Local roots-global reach 0711
PPL Local roots-global reach 0711
Why Is It Always Volume Before Price?
Why Is It Always Volume Before Price?
Media pitch chris & luke
Media pitch chris & luke
Size finder
Size finder
Template chinese version
Template chinese version
6 oct esport i valors
6 oct esport i valors
Musica E Sport Roma
Musica E Sport Roma
Natsumesoseki kokoro
Natsumesoseki kokoro
Ogrody wertykalne
Ogrody wertykalne
Media movie1
Media movie1
Changing Channels with Confidence - Nigeria 2013
Changing Channels with Confidence - Nigeria 2013
Signa designer residences
Signa designer residences
Sii. .Cz.Prezentace.2010.Small
Sii. .Cz.Prezentace.2010.Small
Media Presentation33
Media Presentation33
Lecture 10 basic tools of finance
Lecture 10 basic tools of finance
Real Estate Market Report | Magnolia Tx
Real Estate Market Report | Magnolia Tx
Similaire à DartVM on Android
2014 dart flight school in Tokyo
2014 dart flight school in Tokyo
nothingcosmos
CMake multiplatform build-tool
CMake multiplatform build-tool
Naruto TAKAHASHI
Source Code of Dart
Source Code of Dart
nothingcosmos
2014 1018 OSC-Fall Tokyo NETMF
2014 1018 OSC-Fall Tokyo NETMF
Atomu Hidaka
cocos2d-xとネイティブ間の連携
cocos2d-xとネイティブ間の連携
Tomoaki Shimizu
Windows 8時代のアプリ開発
Windows 8時代のアプリ開発
信之 岩永
JTF2020 クロスコンパイルだけが能ではない組み込みLinuxシステムのCI/CDインフラ構築
JTF2020 クロスコンパイルだけが能ではない組み込みLinuxシステムのCI/CDインフラ構築
yaegashi
関東GPGPU勉強会 LLVM meets GPU
関東GPGPU勉強会 LLVM meets GPU
Takuro Iizuka
C base design methodology with s dx and xilinx ml
C base design methodology with s dx and xilinx ml
ssuser3a4b8c
181106 02
181106 02
openrtm
Firefox DevTools
Firefox DevTools
dynamis
Cuda
Cuda
Shumpei Hozumi
Android Studioの魅力
Android Studioの魅力
Keiji Ariyama
Let's play with Goldfish
Let's play with Goldfish
Tetsuyuki Kobayashi
Xilinx SDSoC(2016.2)解体新書ソフトウェア編
Xilinx SDSoC(2016.2)解体新書ソフトウェア編
Mr. Vengineer
ふつうのLinuxプログラミング
ふつうのLinuxプログラミング
Shuhei KONDO
はじめてのpostmarketOSインストール Windowsタブレット #kagolug Beginner for install postmar...
はじめてのpostmarketOSインストール Windowsタブレット #kagolug Beginner for install postmar...
Netwalker lab kapper
Circle ci and docker+serverspec
Circle ci and docker+serverspec
Tsuyoshi Yamada
Android Lecture #01 @PRO&BSC Inc.
Android Lecture #01 @PRO&BSC Inc.
Yuki Higuchi
Code Pack の話
Code Pack の話
Yoshihisa Ozaki
Similaire à DartVM on Android
(20)
2014 dart flight school in Tokyo
2014 dart flight school in Tokyo
CMake multiplatform build-tool
CMake multiplatform build-tool
Source Code of Dart
Source Code of Dart
2014 1018 OSC-Fall Tokyo NETMF
2014 1018 OSC-Fall Tokyo NETMF
cocos2d-xとネイティブ間の連携
cocos2d-xとネイティブ間の連携
Windows 8時代のアプリ開発
Windows 8時代のアプリ開発
JTF2020 クロスコンパイルだけが能ではない組み込みLinuxシステムのCI/CDインフラ構築
JTF2020 クロスコンパイルだけが能ではない組み込みLinuxシステムのCI/CDインフラ構築
関東GPGPU勉強会 LLVM meets GPU
関東GPGPU勉強会 LLVM meets GPU
C base design methodology with s dx and xilinx ml
C base design methodology with s dx and xilinx ml
181106 02
181106 02
Firefox DevTools
Firefox DevTools
Cuda
Cuda
Android Studioの魅力
Android Studioの魅力
Let's play with Goldfish
Let's play with Goldfish
Xilinx SDSoC(2016.2)解体新書ソフトウェア編
Xilinx SDSoC(2016.2)解体新書ソフトウェア編
ふつうのLinuxプログラミング
ふつうのLinuxプログラミング
はじめてのpostmarketOSインストール Windowsタブレット #kagolug Beginner for install postmar...
はじめてのpostmarketOSインストール Windowsタブレット #kagolug Beginner for install postmar...
Circle ci and docker+serverspec
Circle ci and docker+serverspec
Android Lecture #01 @PRO&BSC Inc.
Android Lecture #01 @PRO&BSC Inc.
Code Pack の話
Code Pack の話
DartVM on Android
1.
Dart VM on an x86based Android Outline 1. Dart は流行ってない 2. DartVM 速い 3. Android
で動くよ 4. 実演 2012/10/27 yokohama_android_pf_25 nothingcosmos <nothingcosmos@gmail.com>
2.
プロフィール
HN:nothingcosmos ソフトウェアエンジニア (SI 系 ) Excel がともだち 22 回目、 23 回目に参加。 サイタマは遠い android の vm 周りや、 native 周りに興味があります。
3.
プログラミング言語 Dart
Web Programming Language Google が開発 2011/10 発表 2012/10 に M1 SDK release
4.
人気度
TIOBE Programming Community Index for October 2012 JavaScript 11 位 Dart 43 位
5.
流行ってる?
日本では流行ってない。特に○○方面に dis られる印象。 型システムが残念には同意、だけど Java より全然良い。
6.
DartVM
JIT コンパイルを搭載した Dart の処理系 Java に対する JavaVM みたいなもの。 対応プラットフォームは ia32/x86 そのうち ARM Linux Windows Mac Android 対応
7.
DartVM
V8 チームの人たちが作っている。 V8 の 10 倍高速に起動する。 V8 の 2 倍高速を目指す。
8.
使われ方
ClientSide(WEB ブラウザ dartium, DartVM on Android) ServerSide(DartVM)
9.
WEB 業界のトレンド (
バトルロワイヤル )
10.
DartVM on Android の仕組み ホスト PC Ubuntu12
x86 X86 Android Emulator (1) DartVM を android 向けにクロスビルド /data/local/dart/dart DartVM /data/local/dart/hello.dart dart (2) adb push (3) adb push (4) adb shell /data/local/dart/dart hello.dart /data/local/dart/hello.dart
11.
x86based Android Emulator
12.
x86based Android Emulator
13.
DartVM の Android
向けビルド $ gclient config http://dart.googlecode.com/svn/trunk/deps/all.deps $ gclient sync $ echo ”target_os = ['android']” >> .gclient $ gclient sync $ echo ”#include <stdint.h>” >> /usr/include/stdio.h $ tools/build.py m release os android dart
14.
動かす、サンプル $ adb shell mkdir /data/local/dart $ adb push out/android/ReleaseIA32/dart /data/local/dart/dart $ echo "main(){ print("Hello, world!");}" >hello.dart $ adb push hello.dart /data/local/dart $ adb shell /data/local/dart/dart /data/local/dart/hello.dart
15.
実演
hello.dart fibo.dart isolate_test.dart isolate_fibo.dart ( ひとり isolate 停止しない ) read.dart (file 読み込み ) server.dart (HttpServer 起動 停止しない ) systemcall に trace 仕込んだ dart
16.
DartVM の Android
向けファイル runtime/vm runtime/bin debuginfo_android.cc crypto_android.cc gdbjit_android.h|cc dbg_connection_android.h|cc os_android.cc directory_android.cc virtual_memory_android.cc eventhandler_android.h|cc extensions_android.cc runtime/platform fdutils_android.cc utils_android.h|cc file_android.cc thread_android.h|cc platform_android.cc process_android.cc socket_android.h|cc utils_android.cc
17.
DartVM の OS
抽象 I/F runtime/vm/os.h static const char* GetTimeZoneName(int64_t seconds_since_epoch); static int GetTimeZoneOffsetInSeconds(int64_t seconds_since_epoch); static int GetLocalTimeZoneAdjustmentInSeconds(); static int64_t GetCurrentTimeMillis(); static int64_t GetCurrentTimeMicros(); static word ActivationFrameAlignment(); static const int kMaxPreferredCodeAlignment = 32; static word PreferredCodeAlignment(); static uword GetStackSizeLimit(); static int NumberOfAvailableProcessors(); static void Sleep(int64_t millis); static void Print(const char* format, ...) PRINTF_ATTRIBUTE(1, 2); static void PrintErr(const char* format, ...) PRINTF_ATTRIBUTE(1, 2); static void VFPrint(FILE* stream, const char* format, va_list args); static int SNPrint(char* str, size_t size, const char* format, ...) PRINTF_ATTRIBUTE(3, 4); static int VSNPrint(char* str, size_t size, const char* format, va_list args); static bool StringToInt64(const char* str, int64_t* value); static void InitOnce(); static void Shutdown(); static void Abort(); static void Exit(int code);
18.
DartVM が呼ぶ systemcall runtime/vm/os_android.cc
localtime_r() tzset() gettimeofday() getrlimit() sysconf(_SC_NPROCESSORS_ONLN) usleep() vfprintf() vsnprintf() va_start() va_end() strtoll() exit() runtime/vm/virtual_memory_android.cc getpagesize() mmap() munmap() unmap() mprotect()
19.
Linux と Android
向けファイルの違い ほぼなし。 ときどき include や error_code の差分 intptr_t と int64_t
20.
DartVM on Android の制限
ビルドできるホストは Linux のみ x86 Android Emulator か、 Android NDK で動く。 他 CPU はこれから 今のところコマンドラインからしか操作できない。 Dart のライブラリに制限がある。 DartVM から Android の C や Java の I/F を使用不可能
21.
x86based Android って速い?
Intel の new codegen 大改造パッチが投下 https://androidreview.googlesource.com/#/c/38941/ before after ArchUtility.cpp AnalysisO1.cpp Assemble.cpp AnalysisO1.h CalloutHelper.h BytecodeVisitor.cpp Codegen.h CodegenInterface.cpp CodegenDriver.cpp Lower.cpp X86LIR.h Lower.h NcgAot.cpp ia32 LowerAlu.cpp NcgAot.h ArchVariant.cpp LowerConst.cpp NcgHelper.cpp ArchVariant.h LowerGetPut.cpp NcgHelper.h CallingConvention.S LowerHelper.cpp Translator.h Codegen.cpp LowerInvoke.cpp libenc (from Harmony asm em LowerJump.cpp dec/enc) LowerMove.cpp LowerObject.cpp LowerReturn.cpp
22.
まとめ
x86based Android Emulator は速いかも Chome 以外のブラウザで Dart はサポートされない。 Android に標準搭載されるかも。 詳細は http://code.google.com/p/dart/wiki/Android
Télécharger maintenant