Submit Search
Upload
ライフゲームを最適化した話
•
0 likes
•
2,389 views
pe pon
Follow
セキュリティ・キャンプ2014 個人成果発表 セキュアなシステムを作ろうクラスを代表して成果発表しました。
Read less
Read more
Engineering
Report
Share
Report
Share
1 of 27
Download now
Download to read offline
Recommended
レガシーフリーOSに必要な要素技術 legacy free os
レガシーフリーOSに必要な要素技術 legacy free os
uchan_nos
30分で分かる!OSの作り方 ver.2
30分で分かる!OSの作り方 ver.2
uchan_nos
async/await deep dive
async/await deep dive
Takaaki Suzuki
Async History in .NET
Async History in .NET
Takaaki Suzuki
Attrasian JIRAをv6.3.15からv7.3.2へバージョンアップした話
Attrasian JIRAをv6.3.15からv7.3.2へバージョンアップした話
Yukiya Hayashi
.NET CoreでのWindowsサービスの作り方と、Coreならではの便利な機能
.NET CoreでのWindowsサービスの作り方と、Coreならではの便利な機能
Study Group by SciencePark Corp.
卒論発表@合宿
卒論発表@合宿
pe pon
2013秋h研最終発表(生物学的自然主義)
2013秋h研最終発表(生物学的自然主義)
pe pon
Recommended
レガシーフリーOSに必要な要素技術 legacy free os
レガシーフリーOSに必要な要素技術 legacy free os
uchan_nos
30分で分かる!OSの作り方 ver.2
30分で分かる!OSの作り方 ver.2
uchan_nos
async/await deep dive
async/await deep dive
Takaaki Suzuki
Async History in .NET
Async History in .NET
Takaaki Suzuki
Attrasian JIRAをv6.3.15からv7.3.2へバージョンアップした話
Attrasian JIRAをv6.3.15からv7.3.2へバージョンアップした話
Yukiya Hayashi
.NET CoreでのWindowsサービスの作り方と、Coreならではの便利な機能
.NET CoreでのWindowsサービスの作り方と、Coreならではの便利な機能
Study Group by SciencePark Corp.
卒論発表@合宿
卒論発表@合宿
pe pon
2013秋h研最終発表(生物学的自然主義)
2013秋h研最終発表(生物学的自然主義)
pe pon
Microsoft Azure x EC-CUBE @西浦温泉
Microsoft Azure x EC-CUBE @西浦温泉
Kentaro Ohkouchi
Microsoft azureとdockerとansibleと
Microsoft azureとdockerとansibleと
Kinoshita Miku
テスト駆動で行うネットワーク自動化のすすめ
テスト駆動で行うネットワーク自動化のすすめ
kinunori
【de:code19】最高のゲームをつくろう! マイクロソフト Game Stack でゲーム開発をしよう!
【de:code19】最高のゲームをつくろう! マイクロソフト Game Stack でゲーム開発をしよう!
Daisuke Masubuchi
20191216 AWS re:Invent 2019 Game Sessions Lightning
20191216 AWS re:Invent 2019 Game Sessions Lightning
Amazon Web Services Japan
ゲーム開発初心者の僕がUnity + WebSocketで何か作ってみた
ゲーム開発初心者の僕がUnity + WebSocketで何か作ってみた
Kohei Kadowaki
Memtest86をかけてみた話
Memtest86をかけてみた話
Yasuaki Sera
[G-Tech2014講演資料] Microsoft Azureで負荷分散された仮想マシンを作ってみよう ~Amazon Web Servicesと比べな...
[G-Tech2014講演資料] Microsoft Azureで負荷分散された仮想マシンを作ってみよう ~Amazon Web Servicesと比べな...
Trainocate Japan, Ltd.
AppCenter
AppCenter
Satoru Fujimori
わんくま同盟大阪勉強会 Vol.68 - Visual Studio Code 拡張機能作成入門
わんくま同盟大阪勉強会 Vol.68 - Visual Studio Code 拡張機能作成入門
TATSUYA HAYAMIZU
Unity勉強会資料2014-05-31
Unity勉強会資料2014-05-31
Tomo Mizoe
ゲーム開発環境、もっと楽にできるよ♬ マインクラフトでも実践している DevOpsでゲーム開発を効率化しよう!
ゲーム開発環境、もっと楽にできるよ♬ マインクラフトでも実践している DevOpsでゲーム開発を効率化しよう!
Hiroko Umetsu
Co-Simulation mechatronics and software
Co-Simulation mechatronics and software
Keiju Anada
【初心者向け】EC-CUBE プラグイン作成 ハンズオンセミナー @ 名古屋
【初心者向け】EC-CUBE プラグイン作成 ハンズオンセミナー @ 名古屋
Kentaro Ohkouchi
【サポーターズCoLab勉強会】「美少女になりたい…」お手軽VTuber入門ハンズオン
【サポーターズCoLab勉強会】「美少女になりたい…」お手軽VTuber入門ハンズオン
Kohki Nakaji
[使い倒し]GitHubのIssueとTFS/VSOのWorkItem連動に挑む(2015/08/26)
[使い倒し]GitHubのIssueとTFS/VSOのWorkItem連動に挑む(2015/08/26)
Masanori Ishigami
vFabricを触ろう
vFabricを触ろう
土岐 孝平
仮想環境に MAUI 環境を構築する話
仮想環境に MAUI 環境を構築する話
m ishizaki
Ma8 Caravan 大阪 rev1
Ma8 Caravan 大阪 rev1
Keiji Kamebuchi
ITPro Expo 2014: Microsoft + Cisco UCS (Cisco Unified Computing System) サーバ
ITPro Expo 2014: Microsoft + Cisco UCS (Cisco Unified Computing System) サーバ
シスコシステムズ合同会社
More Related Content
Similar to ライフゲームを最適化した話
Microsoft Azure x EC-CUBE @西浦温泉
Microsoft Azure x EC-CUBE @西浦温泉
Kentaro Ohkouchi
Microsoft azureとdockerとansibleと
Microsoft azureとdockerとansibleと
Kinoshita Miku
テスト駆動で行うネットワーク自動化のすすめ
テスト駆動で行うネットワーク自動化のすすめ
kinunori
【de:code19】最高のゲームをつくろう! マイクロソフト Game Stack でゲーム開発をしよう!
【de:code19】最高のゲームをつくろう! マイクロソフト Game Stack でゲーム開発をしよう!
Daisuke Masubuchi
20191216 AWS re:Invent 2019 Game Sessions Lightning
20191216 AWS re:Invent 2019 Game Sessions Lightning
Amazon Web Services Japan
ゲーム開発初心者の僕がUnity + WebSocketで何か作ってみた
ゲーム開発初心者の僕がUnity + WebSocketで何か作ってみた
Kohei Kadowaki
Memtest86をかけてみた話
Memtest86をかけてみた話
Yasuaki Sera
[G-Tech2014講演資料] Microsoft Azureで負荷分散された仮想マシンを作ってみよう ~Amazon Web Servicesと比べな...
[G-Tech2014講演資料] Microsoft Azureで負荷分散された仮想マシンを作ってみよう ~Amazon Web Servicesと比べな...
Trainocate Japan, Ltd.
AppCenter
AppCenter
Satoru Fujimori
わんくま同盟大阪勉強会 Vol.68 - Visual Studio Code 拡張機能作成入門
わんくま同盟大阪勉強会 Vol.68 - Visual Studio Code 拡張機能作成入門
TATSUYA HAYAMIZU
Unity勉強会資料2014-05-31
Unity勉強会資料2014-05-31
Tomo Mizoe
ゲーム開発環境、もっと楽にできるよ♬ マインクラフトでも実践している DevOpsでゲーム開発を効率化しよう!
ゲーム開発環境、もっと楽にできるよ♬ マインクラフトでも実践している DevOpsでゲーム開発を効率化しよう!
Hiroko Umetsu
Co-Simulation mechatronics and software
Co-Simulation mechatronics and software
Keiju Anada
【初心者向け】EC-CUBE プラグイン作成 ハンズオンセミナー @ 名古屋
【初心者向け】EC-CUBE プラグイン作成 ハンズオンセミナー @ 名古屋
Kentaro Ohkouchi
【サポーターズCoLab勉強会】「美少女になりたい…」お手軽VTuber入門ハンズオン
【サポーターズCoLab勉強会】「美少女になりたい…」お手軽VTuber入門ハンズオン
Kohki Nakaji
[使い倒し]GitHubのIssueとTFS/VSOのWorkItem連動に挑む(2015/08/26)
[使い倒し]GitHubのIssueとTFS/VSOのWorkItem連動に挑む(2015/08/26)
Masanori Ishigami
vFabricを触ろう
vFabricを触ろう
土岐 孝平
仮想環境に MAUI 環境を構築する話
仮想環境に MAUI 環境を構築する話
m ishizaki
Ma8 Caravan 大阪 rev1
Ma8 Caravan 大阪 rev1
Keiji Kamebuchi
ITPro Expo 2014: Microsoft + Cisco UCS (Cisco Unified Computing System) サーバ
ITPro Expo 2014: Microsoft + Cisco UCS (Cisco Unified Computing System) サーバ
シスコシステムズ合同会社
Similar to ライフゲームを最適化した話
(20)
Microsoft Azure x EC-CUBE @西浦温泉
Microsoft Azure x EC-CUBE @西浦温泉
Microsoft azureとdockerとansibleと
Microsoft azureとdockerとansibleと
テスト駆動で行うネットワーク自動化のすすめ
テスト駆動で行うネットワーク自動化のすすめ
【de:code19】最高のゲームをつくろう! マイクロソフト Game Stack でゲーム開発をしよう!
【de:code19】最高のゲームをつくろう! マイクロソフト Game Stack でゲーム開発をしよう!
20191216 AWS re:Invent 2019 Game Sessions Lightning
20191216 AWS re:Invent 2019 Game Sessions Lightning
ゲーム開発初心者の僕がUnity + WebSocketで何か作ってみた
ゲーム開発初心者の僕がUnity + WebSocketで何か作ってみた
Memtest86をかけてみた話
Memtest86をかけてみた話
[G-Tech2014講演資料] Microsoft Azureで負荷分散された仮想マシンを作ってみよう ~Amazon Web Servicesと比べな...
[G-Tech2014講演資料] Microsoft Azureで負荷分散された仮想マシンを作ってみよう ~Amazon Web Servicesと比べな...
AppCenter
AppCenter
わんくま同盟大阪勉強会 Vol.68 - Visual Studio Code 拡張機能作成入門
わんくま同盟大阪勉強会 Vol.68 - Visual Studio Code 拡張機能作成入門
Unity勉強会資料2014-05-31
Unity勉強会資料2014-05-31
ゲーム開発環境、もっと楽にできるよ♬ マインクラフトでも実践している DevOpsでゲーム開発を効率化しよう!
ゲーム開発環境、もっと楽にできるよ♬ マインクラフトでも実践している DevOpsでゲーム開発を効率化しよう!
Co-Simulation mechatronics and software
Co-Simulation mechatronics and software
【初心者向け】EC-CUBE プラグイン作成 ハンズオンセミナー @ 名古屋
【初心者向け】EC-CUBE プラグイン作成 ハンズオンセミナー @ 名古屋
【サポーターズCoLab勉強会】「美少女になりたい…」お手軽VTuber入門ハンズオン
【サポーターズCoLab勉強会】「美少女になりたい…」お手軽VTuber入門ハンズオン
[使い倒し]GitHubのIssueとTFS/VSOのWorkItem連動に挑む(2015/08/26)
[使い倒し]GitHubのIssueとTFS/VSOのWorkItem連動に挑む(2015/08/26)
vFabricを触ろう
vFabricを触ろう
仮想環境に MAUI 環境を構築する話
仮想環境に MAUI 環境を構築する話
Ma8 Caravan 大阪 rev1
Ma8 Caravan 大阪 rev1
ITPro Expo 2014: Microsoft + Cisco UCS (Cisco Unified Computing System) サーバ
ITPro Expo 2014: Microsoft + Cisco UCS (Cisco Unified Computing System) サーバ
ライフゲームを最適化した話
1.
ライフゲームを最適化した話 Twitter, Inc. セキュアなシステムを作ろうクラス OSECPU-VM ゼミ ぺーぽん(@Q7U)
2.
OSECPU-VM とは
3.
OSECPU-VM とは 仮想マシンの オープンソースプロジェクト
4.
OSECPU-VM の目的 ・教育 ・デバッグ支援とセキュリティ ・互換性 ・コード密度
5.
VMゼミの華麗なる連携
6.
VMゼミの華麗なる連携 アプリケーションの実装 VM の実装 ぺーぽん **** **** 言語とコンパイラの実装
7.
私がやったこと
8.
私がやったこと ・ 練習用アプリの作成 ・ 再帰に関するバグの指摘 ・
api_malloc_InitINT() に関する脆弱性指摘 ・ ライフゲームを ASKA で実装 ・ ライフゲームを CHAGE で再実装
9.
Conway が考案した人工生命シミュレーション ライフゲーム
10.
Why ライフゲーム?
11.
・ きれい(小並感) ・ 最適化が見込める ・
少ない命令で実装可能 Why ライフゲーム?
12.
・ 無限に繁殖するパターン グライダー銃
13.
・シンプルに → 最適化が容易 → セキュア 仕様
14.
ASKAで書いてみた
15.
ASKAで書いてみた ・ (思ったより大変だった) ・ 最適化の余地あり
16.
for ( i
= 0; i != 3; i++ ){ 最適化(1) 扱う数値の限定
17.
for ( i
= 0; i != 3; i++ ){ for ( i = -1; i != 2; i++ ){ 最適化(1) 扱う数値の限定
18.
ベクトル化命令 REM36(); レジスタ番号が1ずつ違う場合 最初の命令以外を省略できる 最適化(2) ベクトル化
19.
最適化の闇は深い その他いろいろ
20.
デモ
21.
ということで
22.
140 byte ということで
23.
140 byte ということで 世界最小!(かも)
24.
ということで
25.
hoge.ask → hoge.chag 中間生成のアセンブリ言語版を参考 →
CHAGE の言語仕様に沿って再実装 ASKA → CHAGE
26.
CHAGEの言語仕様は割りと高級 そこまで苦労せずに再実装できた がしかし
27.
まとめ ・ 140byteでライフゲームを作った ・ それをCHAGEでも動くようにした
Download now