Enviar búsqueda
Cargar
Polyglot on the JVM with Graal (Japanese)
•
2 recomendaciones
•
3,246 vistas
Logico
Seguir
Presentation delivered at JJUG CCC 2017 Spring (Japanese)
Leer menos
Leer más
Tecnología
Vista de diapositivas
Denunciar
Compartir
Vista de diapositivas
Denunciar
Compartir
1 de 91
Descargar ahora
Descargar para leer sin conexión
Recomendados
CDI 2.0 (JSR 365) - Java Day Tokyo 2017 (English)
CDI 2.0 (JSR 365) - Java Day Tokyo 2017 (English)
Logico
Another compilation method in java - AOT (Ahead of Time) compilation
Another compilation method in java - AOT (Ahead of Time) compilation
Logico
Polyglot on the JVM with Graal (English)
Polyglot on the JVM with Graal (English)
Logico
Cloud Native Java GraalVM 이상과 현실
Cloud Native Java GraalVM 이상과 현실
Taewan Kim
Cloud Native Java:GraalVM
Cloud Native Java:GraalVM
Taewan alvin Kim
Java EE 8 Overview (Japanese)
Java EE 8 Overview (Japanese)
Logico
20191119 Cloud Native Java : GraalVM
20191119 Cloud Native Java : GraalVM
Taewan Kim
Java EE, What's Next? by Anil Gaur
Java EE, What's Next? by Anil Gaur
Takashi Ito
Recomendados
CDI 2.0 (JSR 365) - Java Day Tokyo 2017 (English)
CDI 2.0 (JSR 365) - Java Day Tokyo 2017 (English)
Logico
Another compilation method in java - AOT (Ahead of Time) compilation
Another compilation method in java - AOT (Ahead of Time) compilation
Logico
Polyglot on the JVM with Graal (English)
Polyglot on the JVM with Graal (English)
Logico
Cloud Native Java GraalVM 이상과 현실
Cloud Native Java GraalVM 이상과 현실
Taewan Kim
Cloud Native Java:GraalVM
Cloud Native Java:GraalVM
Taewan alvin Kim
Java EE 8 Overview (Japanese)
Java EE 8 Overview (Japanese)
Logico
20191119 Cloud Native Java : GraalVM
20191119 Cloud Native Java : GraalVM
Taewan Kim
Java EE, What's Next? by Anil Gaur
Java EE, What's Next? by Anil Gaur
Takashi Ito
New opportunities for Developers With GraalVM
New opportunities for Developers With GraalVM
Alina Yurenko
Oracle Code in Seoul: Provisioning of Cloud Resource
Oracle Code in Seoul: Provisioning of Cloud Resource
Taewan Kim
Build Smart Service on GCP - Google DevFest 2018 Taiwan
Build Smart Service on GCP - Google DevFest 2018 Taiwan
David Chen
Bringing Java into the Open
Bringing Java into the Open
Heather VanCura
11회 Oracle Developer Meetup 발표 자료: Oracle NoSQL (2019.05.18) oracle-nosql pu...
11회 Oracle Developer Meetup 발표 자료: Oracle NoSQL (2019.05.18) oracle-nosql pu...
Taewan Kim
Developers vs DBAs - How to win the war
Developers vs DBAs - How to win the war
gvenzl
Data Management in a Microservices World
Data Management in a Microservices World
gvenzl
How and why GraalVM is quickly becoming relevant for you (DOAG 2020)
How and why GraalVM is quickly becoming relevant for you (DOAG 2020)
Lucas Jellema
Application Development with Oracle Database
Application Development with Oracle Database
gvenzl
Java EE Next
Java EE Next
David Delabassee
Java EE 8 - February 2017 update
Java EE 8 - February 2017 update
David Delabassee
JCP 20 Year Anniversary
JCP 20 Year Anniversary
Heather VanCura
JAX-RS 2.1 Reloaded
JAX-RS 2.1 Reloaded
David Delabassee
The Future of Java and You
The Future of Java and You
Heather VanCura
From Java EE to Jakarta EE
From Java EE to Jakarta EE
Dmitry Kornilov
Oracle Database features every developer should know about
Oracle Database features every developer should know about
gvenzl
Japanese Introduction to Oracle JET
Japanese Introduction to Oracle JET
Geertjan Wielenga
Java EE Next - BeJUG JavaOne Afterglow 2016
Java EE Next - BeJUG JavaOne Afterglow 2016
David Delabassee
JavaCro'15 - Everything a Java EE Developer needs to know about the JavaScrip...
JavaCro'15 - Everything a Java EE Developer needs to know about the JavaScrip...
HUJAK - Hrvatska udruga Java korisnika / Croatian Java User Association
楽天が挑むDevOps
楽天が挑むDevOps
Rakuten Group, Inc.
Jvm言語とJava、切っても切れないその関係
Jvm言語とJava、切っても切れないその関係
yy yank
JJUG CCC 2017 Fall オレオレJVM言語を作ってみる
JJUG CCC 2017 Fall オレオレJVM言語を作ってみる
Koichi Sakata
Más contenido relacionado
La actualidad más candente
New opportunities for Developers With GraalVM
New opportunities for Developers With GraalVM
Alina Yurenko
Oracle Code in Seoul: Provisioning of Cloud Resource
Oracle Code in Seoul: Provisioning of Cloud Resource
Taewan Kim
Build Smart Service on GCP - Google DevFest 2018 Taiwan
Build Smart Service on GCP - Google DevFest 2018 Taiwan
David Chen
Bringing Java into the Open
Bringing Java into the Open
Heather VanCura
11회 Oracle Developer Meetup 발표 자료: Oracle NoSQL (2019.05.18) oracle-nosql pu...
11회 Oracle Developer Meetup 발표 자료: Oracle NoSQL (2019.05.18) oracle-nosql pu...
Taewan Kim
Developers vs DBAs - How to win the war
Developers vs DBAs - How to win the war
gvenzl
Data Management in a Microservices World
Data Management in a Microservices World
gvenzl
How and why GraalVM is quickly becoming relevant for you (DOAG 2020)
How and why GraalVM is quickly becoming relevant for you (DOAG 2020)
Lucas Jellema
Application Development with Oracle Database
Application Development with Oracle Database
gvenzl
Java EE Next
Java EE Next
David Delabassee
Java EE 8 - February 2017 update
Java EE 8 - February 2017 update
David Delabassee
JCP 20 Year Anniversary
JCP 20 Year Anniversary
Heather VanCura
JAX-RS 2.1 Reloaded
JAX-RS 2.1 Reloaded
David Delabassee
The Future of Java and You
The Future of Java and You
Heather VanCura
From Java EE to Jakarta EE
From Java EE to Jakarta EE
Dmitry Kornilov
Oracle Database features every developer should know about
Oracle Database features every developer should know about
gvenzl
Japanese Introduction to Oracle JET
Japanese Introduction to Oracle JET
Geertjan Wielenga
Java EE Next - BeJUG JavaOne Afterglow 2016
Java EE Next - BeJUG JavaOne Afterglow 2016
David Delabassee
JavaCro'15 - Everything a Java EE Developer needs to know about the JavaScrip...
JavaCro'15 - Everything a Java EE Developer needs to know about the JavaScrip...
HUJAK - Hrvatska udruga Java korisnika / Croatian Java User Association
楽天が挑むDevOps
楽天が挑むDevOps
Rakuten Group, Inc.
La actualidad más candente
(20)
New opportunities for Developers With GraalVM
New opportunities for Developers With GraalVM
Oracle Code in Seoul: Provisioning of Cloud Resource
Oracle Code in Seoul: Provisioning of Cloud Resource
Build Smart Service on GCP - Google DevFest 2018 Taiwan
Build Smart Service on GCP - Google DevFest 2018 Taiwan
Bringing Java into the Open
Bringing Java into the Open
11회 Oracle Developer Meetup 발표 자료: Oracle NoSQL (2019.05.18) oracle-nosql pu...
11회 Oracle Developer Meetup 발표 자료: Oracle NoSQL (2019.05.18) oracle-nosql pu...
Developers vs DBAs - How to win the war
Developers vs DBAs - How to win the war
Data Management in a Microservices World
Data Management in a Microservices World
How and why GraalVM is quickly becoming relevant for you (DOAG 2020)
How and why GraalVM is quickly becoming relevant for you (DOAG 2020)
Application Development with Oracle Database
Application Development with Oracle Database
Java EE Next
Java EE Next
Java EE 8 - February 2017 update
Java EE 8 - February 2017 update
JCP 20 Year Anniversary
JCP 20 Year Anniversary
JAX-RS 2.1 Reloaded
JAX-RS 2.1 Reloaded
The Future of Java and You
The Future of Java and You
From Java EE to Jakarta EE
From Java EE to Jakarta EE
Oracle Database features every developer should know about
Oracle Database features every developer should know about
Japanese Introduction to Oracle JET
Japanese Introduction to Oracle JET
Java EE Next - BeJUG JavaOne Afterglow 2016
Java EE Next - BeJUG JavaOne Afterglow 2016
JavaCro'15 - Everything a Java EE Developer needs to know about the JavaScrip...
JavaCro'15 - Everything a Java EE Developer needs to know about the JavaScrip...
楽天が挑むDevOps
楽天が挑むDevOps
Destacado
Jvm言語とJava、切っても切れないその関係
Jvm言語とJava、切っても切れないその関係
yy yank
JJUG CCC 2017 Fall オレオレJVM言語を作ってみる
JJUG CCC 2017 Fall オレオレJVM言語を作ってみる
Koichi Sakata
KotlinJSって正直どうなん
KotlinJSって正直どうなん
Hiroshi Kikuchi
入門core.async
入門core.async
sohta
クラウド、クラウドというけれどJavaのシステムにとってクラウドってメリットあるの?
クラウド、クラウドというけれどJavaのシステムにとってクラウドってメリットあるの?
Takakiyo Tanaka
言語設計者が意味論を書くときに考えていたこと
言語設計者が意味論を書くときに考えていたこと
Taku Miyakawa
Open Liberty: オープンソースになったWebSphere Liberty
Open Liberty: オープンソースになったWebSphere Liberty
Takakiyo Tanaka
Jjug ccc
Jjug ccc
Tanaka Yuichi
Arachne Unweaved (JP)
Arachne Unweaved (JP)
Ikuru Kanuma
2017spring jjug ccc_f2
2017spring jjug ccc_f2
Kazuhiro Wada
Kotlin is charming; The reasons Java engineers should start Kotlin.
Kotlin is charming; The reasons Java engineers should start Kotlin.
JustSystems Corporation
U-NEXT学生インターン、過激なJavaの学び方と過激な要求
U-NEXT学生インターン、過激なJavaの学び方と過激な要求
hajime funaki
Jjugccc2017spring-postgres-ccc_m1
Jjugccc2017spring-postgres-ccc_m1
Kosuke Kida
Java8移行は怖くない~エンタープライズ案件でのJava8移行事例~
Java8移行は怖くない~エンタープライズ案件でのJava8移行事例~
Hiroyuki Ohnaka
Java libraries you can't afford to miss
Java libraries you can't afford to miss
Andres Almiray
VMの歩む道。 Dalvik、ART、そしてJava VM
VMの歩む道。 Dalvik、ART、そしてJava VM
yy yank
Introduction of Project Jigsaw
Introduction of Project Jigsaw
Yuichi Sakuraba
SpotBugs(FindBugs)による 大規模ERPのコード品質改善
SpotBugs(FindBugs)による 大規模ERPのコード品質改善
Works Applications
Java Clientで入門する Apache Kafka #jjug_ccc #ccc_e2
Java Clientで入門する Apache Kafka #jjug_ccc #ccc_e2
Yahoo!デベロッパーネットワーク
新卒2年目から始めるOSSのススメ~明日からできるコミットデビュー~
新卒2年目から始めるOSSのススメ~明日からできるコミットデビュー~
Yoshio Kajikuri
Destacado
(20)
Jvm言語とJava、切っても切れないその関係
Jvm言語とJava、切っても切れないその関係
JJUG CCC 2017 Fall オレオレJVM言語を作ってみる
JJUG CCC 2017 Fall オレオレJVM言語を作ってみる
KotlinJSって正直どうなん
KotlinJSって正直どうなん
入門core.async
入門core.async
クラウド、クラウドというけれどJavaのシステムにとってクラウドってメリットあるの?
クラウド、クラウドというけれどJavaのシステムにとってクラウドってメリットあるの?
言語設計者が意味論を書くときに考えていたこと
言語設計者が意味論を書くときに考えていたこと
Open Liberty: オープンソースになったWebSphere Liberty
Open Liberty: オープンソースになったWebSphere Liberty
Jjug ccc
Jjug ccc
Arachne Unweaved (JP)
Arachne Unweaved (JP)
2017spring jjug ccc_f2
2017spring jjug ccc_f2
Kotlin is charming; The reasons Java engineers should start Kotlin.
Kotlin is charming; The reasons Java engineers should start Kotlin.
U-NEXT学生インターン、過激なJavaの学び方と過激な要求
U-NEXT学生インターン、過激なJavaの学び方と過激な要求
Jjugccc2017spring-postgres-ccc_m1
Jjugccc2017spring-postgres-ccc_m1
Java8移行は怖くない~エンタープライズ案件でのJava8移行事例~
Java8移行は怖くない~エンタープライズ案件でのJava8移行事例~
Java libraries you can't afford to miss
Java libraries you can't afford to miss
VMの歩む道。 Dalvik、ART、そしてJava VM
VMの歩む道。 Dalvik、ART、そしてJava VM
Introduction of Project Jigsaw
Introduction of Project Jigsaw
SpotBugs(FindBugs)による 大規模ERPのコード品質改善
SpotBugs(FindBugs)による 大規模ERPのコード品質改善
Java Clientで入門する Apache Kafka #jjug_ccc #ccc_e2
Java Clientで入門する Apache Kafka #jjug_ccc #ccc_e2
新卒2年目から始めるOSSのススメ~明日からできるコミットデビュー~
新卒2年目から始めるOSSのススメ~明日からできるコミットデビュー~
Similar a Polyglot on the JVM with Graal (Japanese)
MySQL Shell - The DevOps Tool for MySQL
MySQL Shell - The DevOps Tool for MySQL
Miguel Araújo
TDC2018SP | Trilha Java Enterprise - O Java EE morreu? EE4J e so um plugin? E...
TDC2018SP | Trilha Java Enterprise - O Java EE morreu? EE4J e so um plugin? E...
tdc-globalcode
General Capabilities of GraalVM by Oleg Selajev @shelajev
General Capabilities of GraalVM by Oleg Selajev @shelajev
Oracle Developers
Cloud Native 자바 플랫폼: Graalvm Overview
Cloud Native 자바 플랫폼: Graalvm Overview
Oracle Korea
REST in an Async World
REST in an Async World
David Delabassee
Why MySQL High Availability Matters
Why MySQL High Availability Matters
Mark Swarbrick
Oow MySQL Whats new in security overview sept 2017 v1
Oow MySQL Whats new in security overview sept 2017 v1
Mark Swarbrick
Deep Dive into Automating Oracle GoldenGate Using the New Microservices
Deep Dive into Automating Oracle GoldenGate Using the New Microservices
Kal BO
TDC2018SP | Trilha Arq Java - Crie arquiteturas escalaveis, multi-language e ...
TDC2018SP | Trilha Arq Java - Crie arquiteturas escalaveis, multi-language e ...
tdc-globalcode
MOUG17 Keynote: What's New from Oracle Database Development
MOUG17 Keynote: What's New from Oracle Database Development
Monica Li
GraalVM: Run Programs Faster Everywhere
GraalVM: Run Programs Faster Everywhere
J On The Beach
TDC2018 | Trilha Java - The quest to the Language Graal: One VM to rule them...
TDC2018 | Trilha Java - The quest to the Language Graal: One VM to rule them...
tdc-globalcode
FOSDEM'18: MySQL InnoDB Cluster - MySQL HA Made Easy!
FOSDEM'18: MySQL InnoDB Cluster - MySQL HA Made Easy!
Miguel Araújo
Democratizing Serverless—The Open Source Fn Project - Serverless Summit
Democratizing Serverless—The Open Source Fn Project - Serverless Summit
CodeOps Technologies LLP
NZOUG-GroundBreakers-2018 - Troubleshooting and Diagnosing 18c RAC
NZOUG-GroundBreakers-2018 - Troubleshooting and Diagnosing 18c RAC
Sandesh Rao
Full Speed Ahead! (Ahead-of-Time Compilation for Java SE) [JavaOne 2017 CON3738]
Full Speed Ahead! (Ahead-of-Time Compilation for Java SE) [JavaOne 2017 CON3738]
David Buck
MySQL Group Replication
MySQL Group Replication
Mark Swarbrick
Harnessing the Power of Optimizer Hints
Harnessing the Power of Optimizer Hints
Maria Colgan
Java @ Rio Meetup #1 - Java @ Oracle Cloud
Java @ Rio Meetup #1 - Java @ Oracle Cloud
Paulo Alberto Simoes ∴
MySQL Enterprise Monitor 3
MySQL Enterprise Monitor 3
Mark Swarbrick
Similar a Polyglot on the JVM with Graal (Japanese)
(20)
MySQL Shell - The DevOps Tool for MySQL
MySQL Shell - The DevOps Tool for MySQL
TDC2018SP | Trilha Java Enterprise - O Java EE morreu? EE4J e so um plugin? E...
TDC2018SP | Trilha Java Enterprise - O Java EE morreu? EE4J e so um plugin? E...
General Capabilities of GraalVM by Oleg Selajev @shelajev
General Capabilities of GraalVM by Oleg Selajev @shelajev
Cloud Native 자바 플랫폼: Graalvm Overview
Cloud Native 자바 플랫폼: Graalvm Overview
REST in an Async World
REST in an Async World
Why MySQL High Availability Matters
Why MySQL High Availability Matters
Oow MySQL Whats new in security overview sept 2017 v1
Oow MySQL Whats new in security overview sept 2017 v1
Deep Dive into Automating Oracle GoldenGate Using the New Microservices
Deep Dive into Automating Oracle GoldenGate Using the New Microservices
TDC2018SP | Trilha Arq Java - Crie arquiteturas escalaveis, multi-language e ...
TDC2018SP | Trilha Arq Java - Crie arquiteturas escalaveis, multi-language e ...
MOUG17 Keynote: What's New from Oracle Database Development
MOUG17 Keynote: What's New from Oracle Database Development
GraalVM: Run Programs Faster Everywhere
GraalVM: Run Programs Faster Everywhere
TDC2018 | Trilha Java - The quest to the Language Graal: One VM to rule them...
TDC2018 | Trilha Java - The quest to the Language Graal: One VM to rule them...
FOSDEM'18: MySQL InnoDB Cluster - MySQL HA Made Easy!
FOSDEM'18: MySQL InnoDB Cluster - MySQL HA Made Easy!
Democratizing Serverless—The Open Source Fn Project - Serverless Summit
Democratizing Serverless—The Open Source Fn Project - Serverless Summit
NZOUG-GroundBreakers-2018 - Troubleshooting and Diagnosing 18c RAC
NZOUG-GroundBreakers-2018 - Troubleshooting and Diagnosing 18c RAC
Full Speed Ahead! (Ahead-of-Time Compilation for Java SE) [JavaOne 2017 CON3738]
Full Speed Ahead! (Ahead-of-Time Compilation for Java SE) [JavaOne 2017 CON3738]
MySQL Group Replication
MySQL Group Replication
Harnessing the Power of Optimizer Hints
Harnessing the Power of Optimizer Hints
Java @ Rio Meetup #1 - Java @ Oracle Cloud
Java @ Rio Meetup #1 - Java @ Oracle Cloud
MySQL Enterprise Monitor 3
MySQL Enterprise Monitor 3
Más de Logico
Welcome, Java 15! (Japanese)
Welcome, Java 15! (Japanese)
Logico
Look into Project Valhalla from CLR viewpoint
Look into Project Valhalla from CLR viewpoint
Logico
Jvmls 2019 feedback valhalla update
Jvmls 2019 feedback valhalla update
Logico
Project Helidon Overview (Japanese)
Project Helidon Overview (Japanese)
Logico
Oracle Code One 2018 Feedback (Server Side / Japanese)
Oracle Code One 2018 Feedback (Server Side / Japanese)
Logico
ADBA (Asynchronous Database Access)
ADBA (Asynchronous Database Access)
Logico
Nashorn in the future (Japanese)
Nashorn in the future (Japanese)
Logico
Nashorn in the future (English)
Nashorn in the future (English)
Logico
これからのNashorn
これからのNashorn
Logico
Nashorn in the future (English)
Nashorn in the future (English)
Logico
Nashorn: JavaScript Running on Java VM (English)
Nashorn: JavaScript Running on Java VM (English)
Logico
Nashorn : JavaScript Running on Java VM (Japanese)
Nashorn : JavaScript Running on Java VM (Japanese)
Logico
Más de Logico
(12)
Welcome, Java 15! (Japanese)
Welcome, Java 15! (Japanese)
Look into Project Valhalla from CLR viewpoint
Look into Project Valhalla from CLR viewpoint
Jvmls 2019 feedback valhalla update
Jvmls 2019 feedback valhalla update
Project Helidon Overview (Japanese)
Project Helidon Overview (Japanese)
Oracle Code One 2018 Feedback (Server Side / Japanese)
Oracle Code One 2018 Feedback (Server Side / Japanese)
ADBA (Asynchronous Database Access)
ADBA (Asynchronous Database Access)
Nashorn in the future (Japanese)
Nashorn in the future (Japanese)
Nashorn in the future (English)
Nashorn in the future (English)
これからのNashorn
これからのNashorn
Nashorn in the future (English)
Nashorn in the future (English)
Nashorn: JavaScript Running on Java VM (English)
Nashorn: JavaScript Running on Java VM (English)
Nashorn : JavaScript Running on Java VM (Japanese)
Nashorn : JavaScript Running on Java VM (Japanese)
Último
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
Khem
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Neo4j
presentation ICT roal in 21st century education
presentation ICT roal in 21st century education
jfdjdjcjdnsjd
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
The Digital Insurer
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Drew Madelung
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Miguel Araújo
Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024
SynarionITSolutions
🐬 The future of MySQL is Postgres 🐘
🐬 The future of MySQL is Postgres 🐘
RTylerCroy
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
Safe Software
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Edi Saputra
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
The Digital Insurer
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
Martijn de Jong
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
Joaquim Jorge
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
Gabriella Davis
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Juan lago vázquez
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
The Digital Insurer
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
Khushali Kathiriya
Último
(20)
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
presentation ICT roal in 21st century education
presentation ICT roal in 21st century education
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024
🐬 The future of MySQL is Postgres 🐘
🐬 The future of MySQL is Postgres 🐘
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
Polyglot on the JVM with Graal (Japanese)
1.
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | Polyglot on the JVM with Graal Akihiro Nishikawa May 20,
2017 JJUG CCC 2017 Spring
2.
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | Safe Harbor Statement The following is intended to outline our general product direction. It is intended for information purposes only, and may not be incorporated into any contract. It is not a commitment to deliver any material, code, or functionality, and should not be relied upon in making purchasing decisions. The development, release, and timing of any features or functionality described for Oracle’s products remains at the sole discretion of Oracle. 2
3.
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | Program Agenda 3 What’s Graal? What’s Graal VM? Polyglot in Graal VM How to use Appendix 1 2 3 4
4.
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | What’s Graal? What’s Graal VM? 4
5.
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | GraalとGraal VM • speculative
optimizationを得意とする、Javaで記述されたJITコンパイラ – HotSpotベース – 種々の言語の実行パフォーマンス向上を目指して設計 – JVMCI (Java-Level JVM Compiler Interface、 JEP 243) 準拠 – Java 9には実験的機能として搭載 5 Graal
6.
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | GraalとGraal VM • GraalやTruffle、その他の言語がバンドルされたJVM 6 Graal
VM
7.
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | 7 GraalとGraal VM C++ Java HotSpot Compiler
Interface Client Server HotSpot JVMCI Graal HotSpot VM Graal VM Compiler Interface Client
8.
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | Polyglot in Graal VM 8
9.
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | The One VM Concept High performance polyglot virtual machine 9
10.
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | 10 The Ruby Logo is Copyright (c) 2006, Yukihiro Matsumoto. It is licensed under the terms of the Creative Commons Attribution-ShareAlike 2.5 agreement JS Logo Copyright (c) 2011 Christopher Williams <chris@iterativedesigns.com>, MIT licence You can distribute the R logo under the terms of the Creative Commons Attribution-ShareAlike
4.0 International license (CC-BY-SA 4.0) or (at your option) the GNU General Public License version 2 (GPL-2).
11.
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | Impl Impl Impl
Impl 11 VM VM VM VM
12.
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | VM Impl Impl Impl
Impl 12
13.
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | • JavaScript – ECMAScript2016のスコアはV8より良好 –
パフォーマンスもV8と同等 – node.jsのフルサポート • R – 統計解析向けのプログラミング言語及 びその開発実行環境 13 • Ruby – JRubyのフォーク – 5〜10倍ほど高性能 • C、C++、Fortran – LLVM(Sulong)を使ってNative Languageをサポート Graal VM Polyglot
14.
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | 14 Graal VM Polyglot C HotSpot JVMCI Graal Truffle LLVM (Sulong) RRubyJavaScript Java
15.
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | Truffle • Graalコンパイラと一緒に使うことで、Truffleインタプリタは自動的にJITコン パイルされ、通常のJavaのパフォーマンスを出すことができる • 実行時に自己最適化を実行する抽象構文木(AST)インタープリタを構築 するための基本的な基盤ならびにツール(TruffleDSL)を提供 15 シンプルなインタプリタとして言語を実装するためのフレームワーク
16.
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | 16 ネイティブモジュールを含めて互換性を担保 Graal.jsのアーキテクチャ C++JavaScript Java nodeモジュール(Javaスクリプトのみ) node標準ライブラリ V8 API Thread
pool (libeio) Event loop (libev) DNS (c-ares) crypto (OpenSSL) Graal.js JavaScript Engine Adapter V8 API to Graal.js (via JNI) Native extensions node bindings (socket, http, …) nodeモジュール (Native extension)
17.
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | FastR • Goal: RのためのTruffleスタックのメリットを認識すること – CやC++といったNative Languageを使わなくても優れたパフォーマンス –
データの重いアプリケーションと並列アプリケーション向けに設計 – CRAN / Bioconductorリポジトリのサポート • GNU Rの「段階的な改善」ではない – Truffleベースの新しい実行エンジン – GNU Rの置換エンジンとして設計 • 最新のGNU Rインタプリタよりも高速(2〜10倍) 17 https://github.com/graalvm/fastr
18.
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | JavaScript in Graal VM 18
19.
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | 標準への対応 19 ECMAScript 2015 (ES6) (16298 tests/16417 tests) テストが通らなかった大部分はUnicode正規表現 93.4% ECMAScript 2016 (ES7) 累乗演算子やArray.prototype.includes()にも対応 テストが通らなかった部分は、ブロックレベル関数定義や、 スプレッド演算子での特殊な条件でのテストなど 99.3%
20.
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | Oracle Confidential – Internal Octaneベンチマークの結果 0 0.2 0.4 0.6 0.8 1 1.2 1.4 V8 (5.4.500.6) Graal.js 20
21.
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | Ruby in Graal VM 21
22.
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | 言語とコアライブラリの標準への対応 22 Ruby言語 JRuby は 94% 96% Rubyコアライブラリ JRuby
は 95% 99%
23.
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | ベンチマークの結果 0 5 10 15 20 25 30 35 40 45 GraalVM JRuby+invokedynamic Ruby 23 Rubyを基準としたパフォーマンスの比較(大きいほど高パフォーマンス) このテストは、Alocationや BigIntegerのパフォーマンス によって制約を受ける
24.
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | “But, it’s easy to optimize that kind of code!” 24
25.
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | 25 単純なローカル変数 ベクトル化してない 単純な浮動小数点の計算 基本的なループ 演算子以外使っていない (メソッド呼び出しがない) 数値型もしくはBoolean型しか使っていない
26.
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | “Real Ruby is much more complex!” 26
27.
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | 27 ループを使わずにSmalltalk スタイルのブロックを利用 ループの境界条件は単純 な値ではなくオブジェクト インスタンス変数 メソッドに隠れた ロジック 配列の利用
28.
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | 28 コアライブラリを使って計算中間オブジェクト 別の配列を使って、配列の配 列にハッシュをマップし、変換 してハッシュに戻す r, g, bのハッシュとして内 部ループのPixcelを表現 ローカル変数を使わず、 メソッド呼び出しのみ
29.
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | 29 メタプログラミング送信 動的に作成されるシンボル 実際のロジックメソッドの 動的メソッド呼び出し
30.
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | Chunky PNG kernels 0.01 0.1 1 10 100 1000 GraalVM JRuby+invokedynamic Ruby 30 Rubyを基準として比較 これらのベンチマークは、 GraalVMが完全に最適化
31.
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | PSD.rb kernels 0.1 1 10 100 1000 GraalVM JRuby+invokedynamic
Ruby 31 Rubyを基準として比較
32.
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | Polyglot 32
33.
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | REST public internet REST private intranet 33
34.
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | REST public internet 34
35.
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | REST public internet 35
36.
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | How we do polyglot in Graal VM 36
37.
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | Ruby Truffle::Interop.eval('application/language', source) value =
Truffle::Interop.import(name) Truffle::Interop.export(name) 37
38.
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | JavaScript Interop.eval('application/language', source) value =
Interop.import(name) Interop.export(name) // Returns 20 Interop.eval('application/javascript', '14 + 6') 38
39.
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | JavaScript in Ruby puts Truffle::Interop.eval('application/javascript', '14 +
6') 39 This returns 20 JavaScript Ruby
40.
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | JavaScript in Ruby Truffle::Interop.eval('application/javascript', "function add(a,b) { return
a + b; } Interop.export('add', add.bind(this));") add = Truffle::Interop.import('add') puts add.call(14,2) 40 Uses function defined in JavaScript from Ruby JavaScript Ruby
41.
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | Ruby JavaScript 41
42.
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | Ruby JS 42
43.
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | Performance 43
44.
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | 44 Clamp ウォームアップ後、 秒単位での Iterationをレポート 乱数入力があると 最適化が効かない
45.
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | Ruby 0 1000000 2000000 3000000 4000000 5000000 6000000 7000000 8000000 9000000 10000000 GraalVM JRuby+invokedynamic Ruby Operations Per Second 45
46.
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | 46 JavaScript (V8) JavaScriptに書き換 え、 V8と組み合わ せてみた
47.
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | Ruby + JavaScript (V8) 0 50000 100000 150000 200000 250000 300000 350000 Ruby (just Ruby) Ruby (Ruby + JS with V8) Operations Per Second 47
48.
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | 48 V8からRhinoへ変更
49.
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | JRuby + JavaScript (Rhino) 0 100000 200000 300000 400000 500000 600000 JRuby+indy (just Ruby) JRuby+indy (Ruby + JS with Rhino) Operations Per Second 49
50.
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | 50 Nashornで試す
51.
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | JRuby + JavaScript (Nashorn) 0 100000 200000 300000 400000 500000 600000 JRuby+indy (just Ruby) JRuby+indy (Ruby + JS with Rhino) JRuby+indy (Ruby + JS with Nashorn) Operations Per Second 51
52.
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | 52 Graal VM
53.
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | Ruby + JavaScript (Graal VM) 0 1000000 2000000 3000000 4000000 5000000 6000000 7000000 8000000 9000000 10000000 GraalVM (just Ruby) GraalVM (Ruby + JS)
JRuby+invokedynamic Ruby Operations Per Second 53
54.
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | 0 1000000 2000000 3000000 4000000 5000000 6000000 7000000 8000000 9000000 10000000 GraalVM (just Ruby) GraalVM (Ruby + JS) JRuby+indy (just Ruby) JRuby+indy (Ruby + JS with Rhino) JRuby+indy (Ruby + JS with Nashorn) Ruby (just Ruby) Ruby (Ruby + JS with V8) Operations Per Second 54
55.
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | 1 10 100 1000 10000 100000 1000000 10000000 GraalVM (just Ruby) GraalVM (Ruby + JS) JRuby+indy (just Ruby) JRuby+indy (Ruby + JS with Rhino) JRuby+indy (Ruby + JS with Nashorn) Ruby (just Ruby) Ruby (Ruby + JS with V8) Operations Per Second 55
56.
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | How Graal achieves this 56
57.
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | Hotspot JIT 57
58.
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | Hotspot JIT Graal Truffle 58
59.
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | Basics of Truffle and Graal 59
60.
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | Basic Concepts • プログラムの表現を共通化 • 意味を失わないようにそのままに •
表現の最適化も共通化 60
61.
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | x + y
* z + x * y z load_local x load_local y load_local z call * call + pushq %rbp movq %rsp, %rbp movq %rdi, -8(%rbp) movq %rsi, -16(%rbp) movq %rdx, -24(%rbp) movq -16(%rbp), %rax movl %eax, %edx movq -24(%rbp), %rax imull %edx, %eax movq -8(%rbp), %rdx addl %edx, %eax popq %rbp ret 61
62.
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | U U U U U Node Rewriting for
Profiling Feedback AST Interpreter Uninitialized Nodes Node Transitions S U I D G Uninitialized Integer Generic DoubleString T. Würthinger, C. Wimmer, A. Wöß, L. Stadler, G. Duboscq, C. Humer, G. Richards, D. Simon, and M. Wolczko. One VM to rule them all. In Proceedings of Onward!, 2013. 62
63.
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | U U U U U I I
I G G Node Rewriting for Profiling Feedback AST Interpreter Rewritten Nodes AST Interpreter Uninitialized Nodes Node Transitions S U I D G Uninitialized Integer Generic DoubleString T. Würthinger, C. Wimmer, A. Wöß, L. Stadler, G. Duboscq, C. Humer, G. Richards, D. Simon, and M. Wolczko. One VM to rule them all. In Proceedings of Onward!, 2013. 63
64.
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | I I I G G I I
I G G Rewriting ng Feedback AST Interpreter Rewritten Nodes Compilation using Partial Evaluation Compiled Code I D Uninitialized Integer Generic Double T. Würthinger, C. Wimmer, A. Wöß, L. Stadler, G. Duboscq, C. Humer, G. Richards, D. Simon, and M. Wolczko. One VM to rule them all. In Proceedings of Onward!, 2013. 64
65.
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | T. Würthinger, C. Wimmer, A. Wöß, L. Stadler, G. Duboscq, C. Humer, G. Richards, D. Simon, and M. Wolczko. One VM to rule them all. In Proceedings of Onward!, 2013. I I I G G I I
I G G Deoptimization to AST Interpreter D I Node Rewriting to Update Profiling Feedback 65
66.
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | T. Würthinger, C. Wimmer, A. Wöß, L. Stadler, G. Duboscq, C. Humer, G. Richards, D. Simon, and M. Wolczko. One VM to rule them all. In Proceedings of Onward!, 2013. I I G G D I D G G
D I D G G Node Rewriting to Update Profiling Feedback Recompilation using Partial Evaluation 66
67.
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | 67 呼び出していたら…
68.
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | 68 高頻度で呼び出している場合…
69.
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | 69
70.
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | 70 異言語で作成していても 高頻度で呼び出している場合…
71.
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | 71
72.
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | 72
73.
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | Looking at how effective this is 73
74.
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | 74
75.
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | 75
76.
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | 76
77.
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | 77
78.
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | 78
79.
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | 79
80.
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | 80
81.
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | How to use Graal VM 81
82.
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | • 含まれているもの – JVM (RE と
DK) – Java – JavaScript – Ruby – R – その他は将来追加予定 • バイナリをtarballとして提供 • macOS用もしくはLinux用 82 Graal VM – everything in one package today
83.
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | 83 Java 8のGraal
VMとは異なり、素のJVMを利用 Java 9では、JVMCIを使って連携 Hotspot Graal Truffle JS others…Ruby Java C++ JVMCI (JVM Compiler Interface)
84.
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | 84 Java 8のGraal
VMとは異なり、素のJVMを利用 Java 9では、JVMCIを使って連携 Hotspot Graal Truffle JS others…Ruby Mavenなどを 利用 Java 9
85.
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | Appendix 85
86.
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | 86 http://www.oracle.com/technetwork/oracle-labs/program-languages “Graal OTN”で検索
87.
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | 87 https://github.com/graalvm “GitHub GraalVM”で検索
88.
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | Acknowledgements Oracle Danilo Ansaloni Stefan Anzinger Cosmin Basca Daniele Bonetta Matthias Brantner Petr Chalupa Jürgen Christ Laurent Daynès Gilles Duboscq Martin Entlicher Brandon Fish Bastian Hossbach Christian Humer Mick Jordan Vojin Jovanovic Peter Kessler David Leopoldseder Kevin Menard Jakub Podlešák Aleksandar Prokopec Tom Rodriguez Oracle (continued) Roland Schatz Chris Seaton Doug Simon Štěpán Šindelář Zbyněk Šlajchrt Lukas Stadler Codrut Stancu Jan Štola Jaroslav Tulach Michael Van De Vanter Adam Welc Christian Wimmer Christian Wirth Paul Wögerer Mario Wolczko Andreas Wöß Thomas Würthinger JKU Linz Prof. Hanspeter Mössenböck Benoit Daloze Josef Eisl Thomas Feichtinger Matthias Grimmer Christian Häubl Josef Haider Christian Huber Stefan Marr Manuel Rigger Stefan Rumzucker Bernhard Urban University of Edinburgh Christophe Dubach Juan José Fumero Alfonso Ranjeet
Singh Toomas Remmelg LaBRI Floréal Morandat University of California, Irvine Prof. Michael Franz Gulfem Savrun Yeniceri Wei Zhang Purdue University Prof. Jan Vitek Tomas Kalibera Petr Maj Lei Zhao T. U. Dortmund Prof. Peter Marwedel Helena Kotthaus Ingo Korb University of California, Davis Prof. Duncan Temple Lang Nicholas Ulle University of Lugano, Switzerland Prof. Walter Binder Sun Haiyang Yudi Zheng Oracle Interns Brian Belleville Miguel Garcia Shams Imam Alexey Karyakin Stephen Kell Andreas Kunft Volker Lanting Gero Leinemann Julian Lettner Joe Nash David Piorkowski Gregor Richards Robert Seilbeck Rifat Shariyar Alumni Erik Eckstein Michael Haupt Christos Kotselidis Hyunjin Lee David Leibs Chris Thalinger Till Westmann
89.
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | Safe Harbor Statement The preceding is intended to outline our general product direction. It is intended for information purposes only, and may not be incorporated into any contract. It is not a commitment to deliver any material, code, or functionality, and should not be relied upon in making purchasing decisions. The development, release, and timing of any features or functionality described for Oracle’s products remains at the sole discretion of Oracle. 89
Descargar ahora