SlideShare a Scribd company logo
末永 恭正 @YaSuenag
今日はGCの話をあまりしません!
他の方の資料等をご覧ください…
OracleとJavaは、Oracle Corporation及びその子会社、関連会社の米国及びその他の国における登録商標です。
文中の社名、商品名等は各社の商標または登録商標である場合があります。
本資料の実装確認はOpenJDK8 8u-dev(HotSpot rev. 7164:bf68e15dc8fe)で行っています。
ハードウェアをちょっと気にして
HotSpotを気持ちよく動かしてあげよう!
※AMD64 Linuxを中心にお話しします
•
•
•
•
•
http://icedtea.classpath.org/wiki/HeapStats/jp
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
$ java -version
openjdk version "1.8.0_31"
OpenJDK Runtime Environment (build 1.8.0_31-b13)
OpenJDK 64-Bit Server VM (build 25.31-b07, mixed mode)
$ java -version
java version "1.8.0"
Java(TM) SE Runtime Environment (build 1.8.0-b132)
Java HotSpot(TM) Client VM (build 25.0-b70, mixed mode)
•
•
•
•
•
•
•
•
• http://docs.oracle.com/javase/jp/8/technotes/guides/vm/index.html
•
•
• http://otndnld.oracle.co.jp/ondemand/javaday2014/pdf/C
2-JavaDay-304328.pdf
•
•
• http://docs.oracle.com/javase/jp/8/technotes/guides/vm/s
erver-class.html
注: Java SE 6の場合、server-classマシンとは、少なくとも2つのCPU
と、最少でも2Gバイトの物理メモリーを備えているマシンを指し
ます。
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
• MetaspaceはGC対象ではありません!
•
•
ちょっと
だけ
•
•
• http://www.slideshare.net/YujiKubota/concurrent-
marksweep-garbage-collection
•
•
• http://www.slideshare.net/YaSuenag/metaspace
• CodeCacheはGCでクリアされません!
•
•
•
ちょっと
だけ
Java HotSpot(TM) 64-Bit Server VM warning: CodeCache is full. Compiler has been disabled.
Java HotSpot(TM) 64-Bit Server VM warning: Try increasing the code cache size using -XX:ReservedCodeCacheSize=
CodeCache: size=2496Kb used=1955Kb max_used=1969Kb free=540Kb
bounds [0x00007f50c844b000, 0x00007f50c86bb000, 0x00007f50c86bb000]
total_blobs=578 nmethods=353 adapters=139
compilation: disabled (not enough contiguous free space left)
•
•
•
•
•
•
• http://www.oracle.com/webfolder/technetwork/jp/javama
gazine/Java-JA13-Architect-evans.pdf
•
•
•
•
$ ulimit -v 102400
$ /usr/local/jdk1.8.0/bin/java -version
#
# There is insufficient memory for the Java Runtime Environment to continue.
# Native memory allocation (malloc) failed to allocate 80 bytes for AllocateHeap
# An error report file with more information is saved as:
# /home/xxx/hs_err_pid8664.log
•
•
•
•
• http://www.oracle.com/technetwork/jp/articles/java/compressedoops-
427542-ja.html
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
# cat /sys/kernel/mm/transparent_hugepage/enabled
always [madvise] never
import java.nio.*;
import java.nio.file.*;
import javax.crypto.*;
import javax.crypto.spec.*;
import java.security.*;
public class AESTest{
public static void main(String[] args) throws Exception{
Key key = new SecretKeySpec("passwordpassword".getBytes(), "AES");
Cipher cipher = Cipher.getInstance("AES/CBC/NoPadding");
cipher.init(Cipher.ENCRYPT_MODE, key);
byte[] plain = Files.readAllBytes(Paths.get(args[0]));
long start = System.currentTimeMillis();
cipher.doFinal(plain);
long end = System.currentTimeMillis();
long elapsedTime = end - start;
System.out.println("Elapsed time: " + elapsedTime + " ms");
}
}
$ java -Xms2g -Xmx2g AESTest /tmp/test.dat
Elapsed time: 1654 ms
$ java -Xms2g -Xmx2g -XX:+UseTransparentHugePages AESTest /tmp/test.dat
Elapsed time: 1613 ms
約40msの差!
ソフトウェア環境:
• Fedora21 x86_64
• kernel-3.18.7-200.fc21.x86_64
• glibc-2.20-8.fc21.x86_64
• java-1.8.0-openjdk-1.8.0.31-5.b13.fc21.x86_64
ハードウェア環境:
• CPU:Intel Core i5 2500T
• MB:GIGABYTE GA-H67A-UD3H-B3
• メモリ:DDR3 1333MHz 2GB×2
テストデータ:
• /tmp/test.dat
• /dev/urandomから500MBを/tmp配下にコピー
• /tmpはtmpfs
$ perf stat -e dTLB-load-misses,dTLB-store-misses java -Xms2g -Xmx2g AESTest /tmp/test.dat
Elapsed time: 1654 ms
Performance counter stats for 'java -Xms2g -Xmx2g AESTest /tmp/test.dat':
826,055 dTLB-load-misses
1,648,456 dTLB-store-misses
2.300445236 seconds time elapsed
$ perf stat -e dTLB-load-misses,dTLB-store-misses java -Xms2g -Xmx2g -XX:+UseTransparentHugePages AESTest /tmp/test.dat
Elapsed time: 1613 ms
Performance counter stats for 'java -Xms2g -Xmx2g -XX:+UseTransparentHugePages AESTest /tmp/test.dat':
623,795 dTLB-load-misses
576,097 dTLB-store-misses
2.165985041 seconds time elapsed
TLBミスヒットが激減!
•
•
•
•
•
•
•
•
•
論理プロセッサ数が8以下のとき
論理プロセッサ数が9以上のとき
論理プロセッサ数と同数
8 +
5 < 論理プロセッサ数 > −8
8
•
•
•
•
•
• http://openjdk.java.net/jeps/157
•
•
•
•
•
•
•
•
•
• http://openjdk.java.net/projects/code-tools/jol/
import sun.misc.Contended;
@Contended
public class Test{
public int val1;
public int val2;
public int val3;
public int val4;
public int val5;
}
$ java -cp jol-cli-0.3.1-full.jar:. 
org.openjdk.jol.Main internals Test
:
Test object internals:
OFFSET SIZE TYPE DESCRIPTION VALUE
:
12 4 int Test.val1 0
16 4 int Test.val2 0
20 4 int Test.val3 0
24 4 int Test.val4 0
28 4 int Test.val5 0
Instance size: 32 bytes (reported by Instrumentation API)
Space losses: 0 bytes internal + 0 bytes external = 0 bytes total
$ java -XX:-RestrictContended -cp jol-cli-0.3.1-full.jar:. 
org.openjdk.jol.Main internals Test
:
Test object internals:
OFFSET SIZE TYPE DESCRIPTION VALUE
:
12 128 (alignment/padding gap) N/A
140 4 int Test.val1 0
144 4 int Test.val2 0
148 4 int Test.val3 0
152 4 int Test.val4 0
156 4 int Test.val5 0
160 128 (loss due to the next object alignment)
Instance size: 288 bytes (reported by Instrumentation API)
Space losses: 128 bytes internal + 128 bytes external = 256 bytes total
@Contended無効 @Contended有効
ソフトウェア環境:
• Fedora21 x86_64
• kernel-3.18.7-200.fc21.x86_64
• glibc-2.20-8.fc21.x86_64
• java-1.8.0-openjdk-1.8.0.31-5.b13.fc21.x86_64
import sun.misc.Contended;
public class Test2{
@Contended("group")
public int val1;
@Contended("group")
public int val2;
public int val3;
public int val4;
@Contended
public int val5;
}
$ java -cp jol-cli-0.3.1-full.jar:. 
org.openjdk.jol.Main internals Test2
:
Test2 object internals:
OFFSET SIZE TYPE DESCRIPTION VALUE
:
12 4 int Test2.val1 0
16 4 int Test2.val2 0
20 4 int Test2.val3 0
24 4 int Test2.val4 0
28 4 int Test2.val5 0
Instance size: 32 bytes (reported by Instrumentation API)
Space losses: 0 bytes internal + 0 bytes external = 0 bytes total
$ java -XX:-RestrictContended -cp jol-cli-0.3.1-full.jar:. 
org.openjdk.jol.Main internals Test2
:
Test2 object internals:
OFFSET SIZE TYPE DESCRIPTION VALUE
:
12 4 int Test2.val3 0
16 4 int Test2.val4 0
20 128 (alignment/padding gap) N/A
148 4 int Test2.val5 0
152 128 (alignment/padding gap) N/A
280 4 int Test2.val1 0
284 4 int Test2.val2 0
288 128 (loss due to the next object alignment)
Instance size: 416 bytes (reported by Instrumentation API)
Space losses: 256 bytes internal + 128 bytes external = 384 bytes total
@Contended無効 @Contended有効
ソフトウェア環境:
• Fedora21 x86_64
• kernel-3.18.7-200.fc21.x86_64
• glibc-2.20-8.fc21.x86_64
• java-1.8.0-openjdk-1.8.0.31-5.b13.fc21.x86_64
•
•
• http://www.oracle.com/technetwork/java/faq-sun-packages-
142232.html
sun.miscパッケージです!
•
•
•
•
•
•
•
•
•
UseSSE
UseAVX
UseAES
UseCLMUL
UseXmmLoadAndClearUpper UseXmmRegToRegMoveAll
UseXMMForArrayCopy
UseUnalignedLoadStores
UseCountLeadingZerosInstruction
UseCountTrailingZerosInstruction
UseBMI1Instructions
UseBMI2Instructions
UsePopCountInstruction
UseFastStosb
AllocatePrefetchInstr
UseRTMLocking
UseRTMForStackLocks
UseSSE42Intrinsics
UseRTMXendForLockBusy
import java.nio.*;
import java.nio.file.*;
import javax.crypto.*;
import javax.crypto.spec.*;
import java.security.*;
public class AESTest{
public static void main(String[] args) throws Exception{
Key key = new SecretKeySpec("passwordpassword".getBytes(), "AES");
Cipher cipher = Cipher.getInstance("AES/CBC/NoPadding");
cipher.init(Cipher.ENCRYPT_MODE, key);
byte[] plain = Files.readAllBytes(Paths.get(args[0]));
long start = System.currentTimeMillis();
cipher.doFinal(plain);
long end = System.currentTimeMillis();
long elapsedTime = end - start;
System.out.println("Elapsed time: " + elapsedTime + " ms");
}
}
$ java -Xms2g -Xmx2g AESTest /tmp/test.dat
Elapsed time: 1669 ms
$ java -Xms2g -Xmx2g -XX:-UseAES AESTest /tmp/test.dat
Elapsed time: 4651 ms
ソフトウェア環境:
• Fedora21 x86_64
• kernel-3.18.7-200.fc21.x86_64
• glibc-2.20-8.fc21.x86_64
• java-1.8.0-openjdk-1.8.0.31-5.b13.fc21.x86_64
約3秒差!
テストデータ:
• /tmp/test.dat
• /dev/urandomから500MBを/tmp配下にコピー
• /tmpはtmpfs
ハードウェア環境:
• CPU:Intel Core i5 2500T
• MB:GIGABYTE GA-H67A-UD3H-B3
• メモリ:DDR3 1333MHz 2GB×2
$ java -XX:+UnlockDiagnosticVMOptions -XX:+PrintIntrinsics AESTest /tmp/test.dat
@ 64 com.sun.crypto.provider.AESCrypt::encryptBlock (953 bytes) (intrinsic)
@ 80 java.lang.System::arraycopy (0 bytes) (intrinsic)
Elapsed time: 1669 ms
$ java -XX:+UnlockDiagnosticVMOptions -XX:+PrintIntrinsics -XX:-UseAES AESTest /tmp/test.dat
@ 80 java.lang.System::arraycopy (0 bytes) (intrinsic)
Elapsed time: 4651 ms
•
•
• http://www.intel.co.jp/content/www/jp/ja/architecture-and-
technology/advanced-encryption-standard--aes-/data-protection-aes-
general-technology.html
•
•
•
•
→AES-NI命令セットを活用した機械語がJITで適用された!
•
•
•
•
•
•
•
•
•
• http://openjdk.java.net/projects/sumatra/
• https://wiki.openjdk.java.net/display/Sumatra/Main
•
•
•
•
•
https://wiki.openjdk.java.net/display/Sumatra/Standalone+Sumatra+Stream+API+Offload+Demo
final int length = 8;
int[] ina = new int[length];
int[] inb = new int[length];
int[] out = new int[length];
// Initialize the input arrays - this is offloadable
IntStream.range(0, length).parallel().forEach(p -> {
ina[p] = 1;
inb[p] = 2;
});
// Sum each pair of elements into out[] - this is offloadable
IntStream.range(0, length).parallel().forEach(p -> {
out[p] = ina[p] + inb[p];
});
We cannot speak for Project Sumatra or AMD. Project Graal decided to temporarily
remove the compiler's GPU support, because the original contributors
indicated to no longer maintain the code. We are still investigating outside
the main branch a new version of compilation support for heterogenous
architectures for Graal. If you want to compile and run a Graal version with GPU support in
the meantime, use this revision: http://hg.openjdk.java.net/graal/graal/rev/91fee1fab96d
<http://hg.openjdk.java.net/graal/graal/rev/91fee1fab96d>.
http://mail.openjdk.java.net/pipermail/sumatra-dev/2015-February/000308.html
HSA/PTXサポート削除
GPUを使いたければこのタグを使用→
•
•
•
•
•
•
• ツールの動作を知ることがHotSpotを知る一番の近道!
•
•
• http://www.slideshare.net/YaSuenag/serviceability-tools
•
•
• http://www.oracle.com/webfolder/technetwork/jp/javama
gazine/Java-JA12-architect-bajaj.pdf
HotSpotがご機嫌ナナメになったら
取るべき情報は取っておこう!
•
•
• http://www.slideshare.net/agetsuma/java-34815905
•
•
•
• だいたい
•
•
•
• クラッシュ解析の最初の取っ掛かり!
•
•
•
•
Current thread (0x00007fb944008800): JavaThread "main" [_thread_in_native, id=10054, stack(0x00007fb9486b0000,0x00007fb9487b1000)]
siginfo: si_signo: 11 (SIGSEGV), si_code: 1 (SEGV_MAPERR), si_addr: 0x0000000000000000
•
•
Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
C [libsegv.so+0x6a0] Java_NativeSEGV_doSEGV+0x18
j NativeSEGV.doSEGV()V+0
j NativeSEGV.main([Ljava/lang/String;)V+0
v ~StubRoutines::call_stub
V [libjvm.so+0x681a56] JavaCalls::call_helper(JavaValue*, methodHandle*, JavaCallArguments*, Thread*)+0x1056
V [libjvm.so+0x6c36c2] jni_invoke_static(JNIEnv_*, JavaValue*, _jobject*, JNICallType, _jmethodID*, JNI_ArgumentPusher*, Thread*)+0x362
V [libjvm.so+0x6e00ca] jni_CallStaticVoidMethod+0x17a
C [libjli.so+0x7bcc] JavaMain+0x80c
C [libpthread.so.0+0x752a]
•
• https://bugs.openjdk.java.net/
•
•
•
•
•
•
•
•
•
•
•
•
:
compile java/lang/invoke/MethodHandle <clinit> ()V -1 4 inline 1 0 -1 java/lang/invoke/MethodHandle <clinit> ()V
•
Current CompileTask:
C2: 13427 2 !b 4 java.lang.invoke.MethodHandle::<clinit> (75 bytes)
•
•
•
•
•
•
•
•
•
•
•
• https://github.com/YaSuenag/JVMLive
•
•
HotSpotコトハジメ

More Related Content

What's hot

java8-features
java8-featuresjava8-features
java8-features
Sascha Koch
 
Introduction httpClient on Java11 / Java11時代のHTTPアクセス再入門
Introduction httpClient on Java11 / Java11時代のHTTPアクセス再入門Introduction httpClient on Java11 / Java11時代のHTTPアクセス再入門
Introduction httpClient on Java11 / Java11時代のHTTPアクセス再入門
tamtam180
 
Troubleshooting Tools In JDK
Troubleshooting Tools In JDKTroubleshooting Tools In JDK
Troubleshooting Tools In JDK
Poonam Bajaj Parhar
 
"What's New in HotSpot JVM 8" @ JPoint 2014, Moscow, Russia
"What's New in HotSpot JVM 8" @ JPoint 2014, Moscow, Russia "What's New in HotSpot JVM 8" @ JPoint 2014, Moscow, Russia
"What's New in HotSpot JVM 8" @ JPoint 2014, Moscow, Russia Vladimir Ivanov
 
"Java memory model for practitioners" at JavaLand 2017 by Vadym Kazulkin/Rodi...
"Java memory model for practitioners" at JavaLand 2017 by Vadym Kazulkin/Rodi..."Java memory model for practitioners" at JavaLand 2017 by Vadym Kazulkin/Rodi...
"Java memory model for practitioners" at JavaLand 2017 by Vadym Kazulkin/Rodi...
Vadym Kazulkin
 
Nashorn : JavaScript Running on Java VM (Japanese)
Nashorn : JavaScript Running on Java VM (Japanese)Nashorn : JavaScript Running on Java VM (Japanese)
Nashorn : JavaScript Running on Java VM (Japanese)
Logico
 
JavaOne 2011 - JVM Bytecode for Dummies
JavaOne 2011 - JVM Bytecode for DummiesJavaOne 2011 - JVM Bytecode for Dummies
JavaOne 2011 - JVM Bytecode for Dummies
Charles Nutter
 
Java Performance Monitoring & Tuning
Java Performance Monitoring & TuningJava Performance Monitoring & Tuning
Java Performance Monitoring & Tuning
Muhammed Shakir
 
JVM: A Platform for Multiple Languages
JVM: A Platform for Multiple LanguagesJVM: A Platform for Multiple Languages
JVM: A Platform for Multiple Languages
Kris Mok
 
Java Tools and Techniques for Solving Tricky Problem
Java Tools and Techniques for Solving Tricky ProblemJava Tools and Techniques for Solving Tricky Problem
Java Tools and Techniques for Solving Tricky Problem
Will Iverson
 
Shooting the troubles: Crashes, Slowdowns, CPU Spikes
Shooting the troubles: Crashes, Slowdowns, CPU SpikesShooting the troubles: Crashes, Slowdowns, CPU Spikes
Shooting the troubles: Crashes, Slowdowns, CPU Spikes
Tier1 app
 
Java Future S Ritter
Java Future S RitterJava Future S Ritter
Java Future S Ritter
catherinewall
 
Top 30 Node.js interview questions
Top 30 Node.js interview questionsTop 30 Node.js interview questions
Top 30 Node.js interview questions
techievarsity
 
Javascript TDD with Jasmine, Karma, and Gulp
Javascript TDD with Jasmine, Karma, and GulpJavascript TDD with Jasmine, Karma, and Gulp
Javascript TDD with Jasmine, Karma, and Gulp
All Things Open
 
Java >= 9
Java >= 9Java >= 9
Java >= 9
Benjamin Pack
 
Terracotta Java Scalability - Stateless Versus Stateful Apps
Terracotta Java Scalability - Stateless Versus Stateful AppsTerracotta Java Scalability - Stateless Versus Stateful Apps
Terracotta Java Scalability - Stateless Versus Stateful Apps
Matthew McCullough
 
Sbt職人のススメ
Sbt職人のススメSbt職人のススメ
Sbt職人のススメ
潤一 加藤
 
Практики применения JRuby
Практики применения JRubyПрактики применения JRuby
Практики применения JRuby
.toster
 
SQLAlchemy Primer
SQLAlchemy PrimerSQLAlchemy Primer
SQLAlchemy Primer
泰 増田
 

What's hot (20)

java8-features
java8-featuresjava8-features
java8-features
 
Introduction httpClient on Java11 / Java11時代のHTTPアクセス再入門
Introduction httpClient on Java11 / Java11時代のHTTPアクセス再入門Introduction httpClient on Java11 / Java11時代のHTTPアクセス再入門
Introduction httpClient on Java11 / Java11時代のHTTPアクセス再入門
 
Troubleshooting Tools In JDK
Troubleshooting Tools In JDKTroubleshooting Tools In JDK
Troubleshooting Tools In JDK
 
"What's New in HotSpot JVM 8" @ JPoint 2014, Moscow, Russia
"What's New in HotSpot JVM 8" @ JPoint 2014, Moscow, Russia "What's New in HotSpot JVM 8" @ JPoint 2014, Moscow, Russia
"What's New in HotSpot JVM 8" @ JPoint 2014, Moscow, Russia
 
"Java memory model for practitioners" at JavaLand 2017 by Vadym Kazulkin/Rodi...
"Java memory model for practitioners" at JavaLand 2017 by Vadym Kazulkin/Rodi..."Java memory model for practitioners" at JavaLand 2017 by Vadym Kazulkin/Rodi...
"Java memory model for practitioners" at JavaLand 2017 by Vadym Kazulkin/Rodi...
 
Nashorn : JavaScript Running on Java VM (Japanese)
Nashorn : JavaScript Running on Java VM (Japanese)Nashorn : JavaScript Running on Java VM (Japanese)
Nashorn : JavaScript Running on Java VM (Japanese)
 
JavaOne 2011 - JVM Bytecode for Dummies
JavaOne 2011 - JVM Bytecode for DummiesJavaOne 2011 - JVM Bytecode for Dummies
JavaOne 2011 - JVM Bytecode for Dummies
 
Java Performance Monitoring & Tuning
Java Performance Monitoring & TuningJava Performance Monitoring & Tuning
Java Performance Monitoring & Tuning
 
JVM: A Platform for Multiple Languages
JVM: A Platform for Multiple LanguagesJVM: A Platform for Multiple Languages
JVM: A Platform for Multiple Languages
 
Java Tools and Techniques for Solving Tricky Problem
Java Tools and Techniques for Solving Tricky ProblemJava Tools and Techniques for Solving Tricky Problem
Java Tools and Techniques for Solving Tricky Problem
 
Shooting the troubles: Crashes, Slowdowns, CPU Spikes
Shooting the troubles: Crashes, Slowdowns, CPU SpikesShooting the troubles: Crashes, Slowdowns, CPU Spikes
Shooting the troubles: Crashes, Slowdowns, CPU Spikes
 
Java Future S Ritter
Java Future S RitterJava Future S Ritter
Java Future S Ritter
 
Top 30 Node.js interview questions
Top 30 Node.js interview questionsTop 30 Node.js interview questions
Top 30 Node.js interview questions
 
Javascript TDD with Jasmine, Karma, and Gulp
Javascript TDD with Jasmine, Karma, and GulpJavascript TDD with Jasmine, Karma, and Gulp
Javascript TDD with Jasmine, Karma, and Gulp
 
Java >= 9
Java >= 9Java >= 9
Java >= 9
 
Terracotta Java Scalability - Stateless Versus Stateful Apps
Terracotta Java Scalability - Stateless Versus Stateful AppsTerracotta Java Scalability - Stateless Versus Stateful Apps
Terracotta Java Scalability - Stateless Versus Stateful Apps
 
Sbt職人のススメ
Sbt職人のススメSbt職人のススメ
Sbt職人のススメ
 
Практики применения JRuby
Практики применения JRubyПрактики применения JRuby
Практики применения JRuby
 
Dropwizard
DropwizardDropwizard
Dropwizard
 
SQLAlchemy Primer
SQLAlchemy PrimerSQLAlchemy Primer
SQLAlchemy Primer
 

Viewers also liked

Metaspace
MetaspaceMetaspace
Metaspace
Yasumasa Suenaga
 
Serviceability Toolsの裏側
Serviceability Toolsの裏側Serviceability Toolsの裏側
Serviceability Toolsの裏側Yasumasa Suenaga
 
Concurrent Mark-Sweep Garbage Collection #jjug_ccc
Concurrent Mark-Sweep Garbage Collection #jjug_cccConcurrent Mark-Sweep Garbage Collection #jjug_ccc
Concurrent Mark-Sweep Garbage Collection #jjug_ccc
Yuji Kubota
 
第六回渋谷Java Java8のJVM監視を考える
第六回渋谷Java Java8のJVM監視を考える第六回渋谷Java Java8のJVM監視を考える
第六回渋谷Java Java8のJVM監視を考えるchonaso
 
HeapStats(Java解析ツールバトル)
HeapStats(Java解析ツールバトル)HeapStats(Java解析ツールバトル)
HeapStats(Java解析ツールバトル)
Yasumasa Suenaga
 
JVM のいろはにほ #javajo
JVM のいろはにほ #javajoJVM のいろはにほ #javajo
JVM のいろはにほ #javajo
Yuji Kubota
 
負荷テストを行う際に知っておきたいこと 初心者編
負荷テストを行う際に知っておきたいこと 初心者編負荷テストを行う際に知っておきたいこと 初心者編
負荷テストを行う際に知っておきたいこと 初心者編
まべ☆てっく運営
 
java.lang.OutOfMemoryError #渋谷java
java.lang.OutOfMemoryError #渋谷javajava.lang.OutOfMemoryError #渋谷java
java.lang.OutOfMemoryError #渋谷java
Yuji Kubota
 
徹底解説!Project Lambdaのすべて[JJUG CCC 2013 Fall H-2]
徹底解説!Project Lambdaのすべて[JJUG CCC 2013 Fall H-2]徹底解説!Project Lambdaのすべて[JJUG CCC 2013 Fall H-2]
徹底解説!Project Lambdaのすべて[JJUG CCC 2013 Fall H-2]
bitter_fox
 
[JDLL 2017] Le Guide du Connard du Logiciel Libre
[JDLL 2017] Le Guide du Connard du Logiciel Libre[JDLL 2017] Le Guide du Connard du Logiciel Libre
[JDLL 2017] Le Guide du Connard du Logiciel Libre
Clément OUDOT
 
2017 HE sytem in Lebanon
2017 HE sytem in Lebanon 2017 HE sytem in Lebanon
2017 HE sytem in Lebanon
Ahmad JAMMAL
 
o discípulo e a oração
o discípulo e a oraçãoo discípulo e a oração
o discípulo e a oração
Pastor Cerqueira
 
20170330 lckva pfi gwp presentatie grondstoffencongres 2017
20170330 lckva pfi gwp presentatie grondstoffencongres 201720170330 lckva pfi gwp presentatie grondstoffencongres 2017
20170330 lckva pfi gwp presentatie grondstoffencongres 2017
Partners for Innovation BV
 
Daniela Bandera Distinte e Integrate 31032017
Daniela Bandera Distinte e Integrate 31032017Daniela Bandera Distinte e Integrate 31032017
Daniela Bandera Distinte e Integrate 31032017
Daniela Bandera
 
Мастер класс "Команда о которой вы мечтаете"
Мастер класс "Команда о которой вы мечтаете"Мастер класс "Команда о которой вы мечтаете"
Мастер класс "Команда о которой вы мечтаете"
Tatyana Гончаренко
 
Transform your living space into beauty.
Transform your living space into beauty.Transform your living space into beauty.
Transform your living space into beauty.
Trent Altman
 
Zły UX. Dlaczego dostajemy 
słabe produkty i usługi?
Zły UX. Dlaczego dostajemy 
słabe produkty i usługi?Zły UX. Dlaczego dostajemy 
słabe produkty i usługi?
Zły UX. Dlaczego dostajemy 
słabe produkty i usługi?
Tomasz Skórski
 
Jc aprile 2017
Jc aprile 2017Jc aprile 2017
Jc aprile 2017
SIEOG
 
ニコニコ動画コメント等データ仕様
ニコニコ動画コメント等データ仕様ニコニコ動画コメント等データ仕様
ニコニコ動画コメント等データ仕様
Masahiro Hamasaki
 
Spłaszczenie płac a zmiana strukturalna
Spłaszczenie płac a zmiana strukturalnaSpłaszczenie płac a zmiana strukturalna
Spłaszczenie płac a zmiana strukturalna
GRAPE
 

Viewers also liked (20)

Metaspace
MetaspaceMetaspace
Metaspace
 
Serviceability Toolsの裏側
Serviceability Toolsの裏側Serviceability Toolsの裏側
Serviceability Toolsの裏側
 
Concurrent Mark-Sweep Garbage Collection #jjug_ccc
Concurrent Mark-Sweep Garbage Collection #jjug_cccConcurrent Mark-Sweep Garbage Collection #jjug_ccc
Concurrent Mark-Sweep Garbage Collection #jjug_ccc
 
第六回渋谷Java Java8のJVM監視を考える
第六回渋谷Java Java8のJVM監視を考える第六回渋谷Java Java8のJVM監視を考える
第六回渋谷Java Java8のJVM監視を考える
 
HeapStats(Java解析ツールバトル)
HeapStats(Java解析ツールバトル)HeapStats(Java解析ツールバトル)
HeapStats(Java解析ツールバトル)
 
JVM のいろはにほ #javajo
JVM のいろはにほ #javajoJVM のいろはにほ #javajo
JVM のいろはにほ #javajo
 
負荷テストを行う際に知っておきたいこと 初心者編
負荷テストを行う際に知っておきたいこと 初心者編負荷テストを行う際に知っておきたいこと 初心者編
負荷テストを行う際に知っておきたいこと 初心者編
 
java.lang.OutOfMemoryError #渋谷java
java.lang.OutOfMemoryError #渋谷javajava.lang.OutOfMemoryError #渋谷java
java.lang.OutOfMemoryError #渋谷java
 
徹底解説!Project Lambdaのすべて[JJUG CCC 2013 Fall H-2]
徹底解説!Project Lambdaのすべて[JJUG CCC 2013 Fall H-2]徹底解説!Project Lambdaのすべて[JJUG CCC 2013 Fall H-2]
徹底解説!Project Lambdaのすべて[JJUG CCC 2013 Fall H-2]
 
[JDLL 2017] Le Guide du Connard du Logiciel Libre
[JDLL 2017] Le Guide du Connard du Logiciel Libre[JDLL 2017] Le Guide du Connard du Logiciel Libre
[JDLL 2017] Le Guide du Connard du Logiciel Libre
 
2017 HE sytem in Lebanon
2017 HE sytem in Lebanon 2017 HE sytem in Lebanon
2017 HE sytem in Lebanon
 
o discípulo e a oração
o discípulo e a oraçãoo discípulo e a oração
o discípulo e a oração
 
20170330 lckva pfi gwp presentatie grondstoffencongres 2017
20170330 lckva pfi gwp presentatie grondstoffencongres 201720170330 lckva pfi gwp presentatie grondstoffencongres 2017
20170330 lckva pfi gwp presentatie grondstoffencongres 2017
 
Daniela Bandera Distinte e Integrate 31032017
Daniela Bandera Distinte e Integrate 31032017Daniela Bandera Distinte e Integrate 31032017
Daniela Bandera Distinte e Integrate 31032017
 
Мастер класс "Команда о которой вы мечтаете"
Мастер класс "Команда о которой вы мечтаете"Мастер класс "Команда о которой вы мечтаете"
Мастер класс "Команда о которой вы мечтаете"
 
Transform your living space into beauty.
Transform your living space into beauty.Transform your living space into beauty.
Transform your living space into beauty.
 
Zły UX. Dlaczego dostajemy 
słabe produkty i usługi?
Zły UX. Dlaczego dostajemy 
słabe produkty i usługi?Zły UX. Dlaczego dostajemy 
słabe produkty i usługi?
Zły UX. Dlaczego dostajemy 
słabe produkty i usługi?
 
Jc aprile 2017
Jc aprile 2017Jc aprile 2017
Jc aprile 2017
 
ニコニコ動画コメント等データ仕様
ニコニコ動画コメント等データ仕様ニコニコ動画コメント等データ仕様
ニコニコ動画コメント等データ仕様
 
Spłaszczenie płac a zmiana strukturalna
Spłaszczenie płac a zmiana strukturalnaSpłaszczenie płac a zmiana strukturalna
Spłaszczenie płac a zmiana strukturalna
 

Similar to HotSpotコトハジメ

Down the Rabbit Hole: An Adventure in JVM Wonderland
Down the Rabbit Hole: An Adventure in JVM WonderlandDown the Rabbit Hole: An Adventure in JVM Wonderland
Down the Rabbit Hole: An Adventure in JVM Wonderland
Charles Nutter
 
De Java 8 a Java 11 y 14
De Java 8 a Java 11 y 14De Java 8 a Java 11 y 14
De Java 8 a Java 11 y 14
Víctor Leonel Orozco López
 
[HES2013] Virtually secure, analysis to remote root 0day on an industry leadi...
[HES2013] Virtually secure, analysis to remote root 0day on an industry leadi...[HES2013] Virtually secure, analysis to remote root 0day on an industry leadi...
[HES2013] Virtually secure, analysis to remote root 0day on an industry leadi...
Hackito Ergo Sum
 
Fast as C: How to Write Really Terrible Java
Fast as C: How to Write Really Terrible JavaFast as C: How to Write Really Terrible Java
Fast as C: How to Write Really Terrible Java
Charles Nutter
 
De Java 8 ate Java 14
De Java 8 ate Java 14De Java 8 ate Java 14
De Java 8 ate Java 14
Víctor Leonel Orozco López
 
Apache Spark v3.0.0
Apache Spark v3.0.0Apache Spark v3.0.0
Apache Spark v3.0.0
Jean-Georges Perrin
 
What to expect from Java 9
What to expect from Java 9What to expect from Java 9
What to expect from Java 9
Ivan Krylov
 
introduction to node.js
introduction to node.jsintroduction to node.js
introduction to node.js
orkaplan
 
The State of Managed Runtimes 2013, by Attila Szegedi
The State of Managed Runtimes 2013, by Attila SzegediThe State of Managed Runtimes 2013, by Attila Szegedi
The State of Managed Runtimes 2013, by Attila Szegedi
ZeroTurnaround
 
GOTO Night with Charles Nutter Slides
GOTO Night with Charles Nutter SlidesGOTO Night with Charles Nutter Slides
GOTO Night with Charles Nutter Slides
Alexandra Masterson
 
Make static instrumentation great again, High performance fuzzing for Windows...
Make static instrumentation great again, High performance fuzzing for Windows...Make static instrumentation great again, High performance fuzzing for Windows...
Make static instrumentation great again, High performance fuzzing for Windows...
Lucas Leong
 
Caching reboot: javax.cache & Ehcache 3
Caching reboot: javax.cache & Ehcache 3Caching reboot: javax.cache & Ehcache 3
Caching reboot: javax.cache & Ehcache 3
Louis Jacomet
 
Java code coverage with JCov. Implementation details and use cases.
Java code coverage with JCov. Implementation details and use cases.Java code coverage with JCov. Implementation details and use cases.
Java code coverage with JCov. Implementation details and use cases.
Alexandre (Shura) Iline
 
Practical IoT Exploitation (DEFCON23 IoTVillage) - Lyon Yang
Practical IoT Exploitation (DEFCON23 IoTVillage) - Lyon YangPractical IoT Exploitation (DEFCON23 IoTVillage) - Lyon Yang
Practical IoT Exploitation (DEFCON23 IoTVillage) - Lyon Yang
Lyon Yang
 
Enterprise manager cloud control 12c(12.1) &agent安装图文指南
Enterprise manager cloud control 12c(12.1) &agent安装图文指南Enterprise manager cloud control 12c(12.1) &agent安装图文指南
Enterprise manager cloud control 12c(12.1) &agent安装图文指南
maclean liu
 
Java gpu computing
Java gpu computingJava gpu computing
Java gpu computing
Arjan Lamers
 
Java 7 Whats New(), Whats Next() from Oredev
Java 7 Whats New(), Whats Next() from OredevJava 7 Whats New(), Whats Next() from Oredev
Java 7 Whats New(), Whats Next() from Oredev
Mattias Karlsson
 
Доклад Михаила Егорова на PHDays
Доклад Михаила Егорова на PHDaysДоклад Михаила Егорова на PHDays
Доклад Михаила Егорова на PHDays
ru_Parallels
 
Hacking Adobe Experience Manager sites
Hacking Adobe Experience Manager sitesHacking Adobe Experience Manager sites
Hacking Adobe Experience Manager sites
Mikhail Egorov
 
Nodejs - Should Ruby Developers Care?
Nodejs - Should Ruby Developers Care?Nodejs - Should Ruby Developers Care?
Nodejs - Should Ruby Developers Care?
Felix Geisendörfer
 

Similar to HotSpotコトハジメ (20)

Down the Rabbit Hole: An Adventure in JVM Wonderland
Down the Rabbit Hole: An Adventure in JVM WonderlandDown the Rabbit Hole: An Adventure in JVM Wonderland
Down the Rabbit Hole: An Adventure in JVM Wonderland
 
De Java 8 a Java 11 y 14
De Java 8 a Java 11 y 14De Java 8 a Java 11 y 14
De Java 8 a Java 11 y 14
 
[HES2013] Virtually secure, analysis to remote root 0day on an industry leadi...
[HES2013] Virtually secure, analysis to remote root 0day on an industry leadi...[HES2013] Virtually secure, analysis to remote root 0day on an industry leadi...
[HES2013] Virtually secure, analysis to remote root 0day on an industry leadi...
 
Fast as C: How to Write Really Terrible Java
Fast as C: How to Write Really Terrible JavaFast as C: How to Write Really Terrible Java
Fast as C: How to Write Really Terrible Java
 
De Java 8 ate Java 14
De Java 8 ate Java 14De Java 8 ate Java 14
De Java 8 ate Java 14
 
Apache Spark v3.0.0
Apache Spark v3.0.0Apache Spark v3.0.0
Apache Spark v3.0.0
 
What to expect from Java 9
What to expect from Java 9What to expect from Java 9
What to expect from Java 9
 
introduction to node.js
introduction to node.jsintroduction to node.js
introduction to node.js
 
The State of Managed Runtimes 2013, by Attila Szegedi
The State of Managed Runtimes 2013, by Attila SzegediThe State of Managed Runtimes 2013, by Attila Szegedi
The State of Managed Runtimes 2013, by Attila Szegedi
 
GOTO Night with Charles Nutter Slides
GOTO Night with Charles Nutter SlidesGOTO Night with Charles Nutter Slides
GOTO Night with Charles Nutter Slides
 
Make static instrumentation great again, High performance fuzzing for Windows...
Make static instrumentation great again, High performance fuzzing for Windows...Make static instrumentation great again, High performance fuzzing for Windows...
Make static instrumentation great again, High performance fuzzing for Windows...
 
Caching reboot: javax.cache & Ehcache 3
Caching reboot: javax.cache & Ehcache 3Caching reboot: javax.cache & Ehcache 3
Caching reboot: javax.cache & Ehcache 3
 
Java code coverage with JCov. Implementation details and use cases.
Java code coverage with JCov. Implementation details and use cases.Java code coverage with JCov. Implementation details and use cases.
Java code coverage with JCov. Implementation details and use cases.
 
Practical IoT Exploitation (DEFCON23 IoTVillage) - Lyon Yang
Practical IoT Exploitation (DEFCON23 IoTVillage) - Lyon YangPractical IoT Exploitation (DEFCON23 IoTVillage) - Lyon Yang
Practical IoT Exploitation (DEFCON23 IoTVillage) - Lyon Yang
 
Enterprise manager cloud control 12c(12.1) &agent安装图文指南
Enterprise manager cloud control 12c(12.1) &agent安装图文指南Enterprise manager cloud control 12c(12.1) &agent安装图文指南
Enterprise manager cloud control 12c(12.1) &agent安装图文指南
 
Java gpu computing
Java gpu computingJava gpu computing
Java gpu computing
 
Java 7 Whats New(), Whats Next() from Oredev
Java 7 Whats New(), Whats Next() from OredevJava 7 Whats New(), Whats Next() from Oredev
Java 7 Whats New(), Whats Next() from Oredev
 
Доклад Михаила Егорова на PHDays
Доклад Михаила Егорова на PHDaysДоклад Михаила Егорова на PHDays
Доклад Михаила Егорова на PHDays
 
Hacking Adobe Experience Manager sites
Hacking Adobe Experience Manager sitesHacking Adobe Experience Manager sites
Hacking Adobe Experience Manager sites
 
Nodejs - Should Ruby Developers Care?
Nodejs - Should Ruby Developers Care?Nodejs - Should Ruby Developers Care?
Nodejs - Should Ruby Developers Care?
 

More from Yasumasa Suenaga

JDK付属ツールにパッチを出しまくったワケ
JDK付属ツールにパッチを出しまくったワケJDK付属ツールにパッチを出しまくったワケ
JDK付属ツールにパッチを出しまくったワケ
Yasumasa Suenaga
 
Panamaを先取り!? JVMCIでJITと遊ぶ
Panamaを先取り!? JVMCIでJITと遊ぶPanamaを先取り!? JVMCIでJITと遊ぶ
Panamaを先取り!? JVMCIでJITと遊ぶ
Yasumasa Suenaga
 
Java 9で進化する診断ツール
Java 9で進化する診断ツールJava 9で進化する診断ツール
Java 9で進化する診断ツール
Yasumasa Suenaga
 
Heap statsfx analyzer
Heap statsfx analyzerHeap statsfx analyzer
Heap statsfx analyzer
Yasumasa Suenaga
 
HeapStatsのデモ (Java The Night)
HeapStatsのデモ (Java The Night)HeapStatsのデモ (Java The Night)
HeapStatsのデモ (Java The Night)Yasumasa Suenaga
 
もしも… Javaでヘテロジニアスコアが使えたら…
もしも… Javaでヘテロジニアスコアが使えたら…もしも… Javaでヘテロジニアスコアが使えたら…
もしも… Javaでヘテロジニアスコアが使えたら…Yasumasa Suenaga
 

More from Yasumasa Suenaga (6)

JDK付属ツールにパッチを出しまくったワケ
JDK付属ツールにパッチを出しまくったワケJDK付属ツールにパッチを出しまくったワケ
JDK付属ツールにパッチを出しまくったワケ
 
Panamaを先取り!? JVMCIでJITと遊ぶ
Panamaを先取り!? JVMCIでJITと遊ぶPanamaを先取り!? JVMCIでJITと遊ぶ
Panamaを先取り!? JVMCIでJITと遊ぶ
 
Java 9で進化する診断ツール
Java 9で進化する診断ツールJava 9で進化する診断ツール
Java 9で進化する診断ツール
 
Heap statsfx analyzer
Heap statsfx analyzerHeap statsfx analyzer
Heap statsfx analyzer
 
HeapStatsのデモ (Java The Night)
HeapStatsのデモ (Java The Night)HeapStatsのデモ (Java The Night)
HeapStatsのデモ (Java The Night)
 
もしも… Javaでヘテロジニアスコアが使えたら…
もしも… Javaでヘテロジニアスコアが使えたら…もしも… Javaでヘテロジニアスコアが使えたら…
もしも… Javaでヘテロジニアスコアが使えたら…
 

Recently uploaded

Automated software refactoring with OpenRewrite and Generative AI.pptx.pdf
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdfAutomated software refactoring with OpenRewrite and Generative AI.pptx.pdf
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdf
timtebeek1
 
Quarkus Hidden and Forbidden Extensions
Quarkus Hidden and Forbidden ExtensionsQuarkus Hidden and Forbidden Extensions
Quarkus Hidden and Forbidden Extensions
Max Andersen
 
E-commerce Application Development Company.pdf
E-commerce Application Development Company.pdfE-commerce Application Development Company.pdf
E-commerce Application Development Company.pdf
Hornet Dynamics
 
Navigating the Metaverse: A Journey into Virtual Evolution"
Navigating the Metaverse: A Journey into Virtual Evolution"Navigating the Metaverse: A Journey into Virtual Evolution"
Navigating the Metaverse: A Journey into Virtual Evolution"
Donna Lenk
 
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket ManagementUtilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
Utilocate
 
Launch Your Streaming Platforms in Minutes
Launch Your Streaming Platforms in MinutesLaunch Your Streaming Platforms in Minutes
Launch Your Streaming Platforms in Minutes
Roshan Dwivedi
 
Need for Speed: Removing speed bumps from your Symfony projects ⚡️
Need for Speed: Removing speed bumps from your Symfony projects ⚡️Need for Speed: Removing speed bumps from your Symfony projects ⚡️
Need for Speed: Removing speed bumps from your Symfony projects ⚡️
Łukasz Chruściel
 
Artificia Intellicence and XPath Extension Functions
Artificia Intellicence and XPath Extension FunctionsArtificia Intellicence and XPath Extension Functions
Artificia Intellicence and XPath Extension Functions
Octavian Nadolu
 
Empowering Growth with Best Software Development Company in Noida - Deuglo
Empowering Growth with Best Software  Development Company in Noida - DeugloEmpowering Growth with Best Software  Development Company in Noida - Deuglo
Empowering Growth with Best Software Development Company in Noida - Deuglo
Deuglo Infosystem Pvt Ltd
 
Transform Your Communication with Cloud-Based IVR Solutions
Transform Your Communication with Cloud-Based IVR SolutionsTransform Your Communication with Cloud-Based IVR Solutions
Transform Your Communication with Cloud-Based IVR Solutions
TheSMSPoint
 
GraphSummit Paris - The art of the possible with Graph Technology
GraphSummit Paris - The art of the possible with Graph TechnologyGraphSummit Paris - The art of the possible with Graph Technology
GraphSummit Paris - The art of the possible with Graph Technology
Neo4j
 
openEuler Case Study - The Journey to Supply Chain Security
openEuler Case Study - The Journey to Supply Chain SecurityopenEuler Case Study - The Journey to Supply Chain Security
openEuler Case Study - The Journey to Supply Chain Security
Shane Coughlan
 
Orion Context Broker introduction 20240604
Orion Context Broker introduction 20240604Orion Context Broker introduction 20240604
Orion Context Broker introduction 20240604
Fermin Galan
 
A Sighting of filterA in Typelevel Rite of Passage
A Sighting of filterA in Typelevel Rite of PassageA Sighting of filterA in Typelevel Rite of Passage
A Sighting of filterA in Typelevel Rite of Passage
Philip Schwarz
 
OpenMetadata Community Meeting - 5th June 2024
OpenMetadata Community Meeting - 5th June 2024OpenMetadata Community Meeting - 5th June 2024
OpenMetadata Community Meeting - 5th June 2024
OpenMetadata
 
Enterprise Resource Planning System in Telangana
Enterprise Resource Planning System in TelanganaEnterprise Resource Planning System in Telangana
Enterprise Resource Planning System in Telangana
NYGGS Automation Suite
 
AI Genie Review: World’s First Open AI WordPress Website Creator
AI Genie Review: World’s First Open AI WordPress Website CreatorAI Genie Review: World’s First Open AI WordPress Website Creator
AI Genie Review: World’s First Open AI WordPress Website Creator
Google
 
Atelier - Innover avec l’IA Générative et les graphes de connaissances
Atelier - Innover avec l’IA Générative et les graphes de connaissancesAtelier - Innover avec l’IA Générative et les graphes de connaissances
Atelier - Innover avec l’IA Générative et les graphes de connaissances
Neo4j
 
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
Mind IT Systems
 
GOING AOT WITH GRAALVM FOR SPRING BOOT (SPRING IO)
GOING AOT WITH GRAALVM FOR  SPRING BOOT (SPRING IO)GOING AOT WITH GRAALVM FOR  SPRING BOOT (SPRING IO)
GOING AOT WITH GRAALVM FOR SPRING BOOT (SPRING IO)
Alina Yurenko
 

Recently uploaded (20)

Automated software refactoring with OpenRewrite and Generative AI.pptx.pdf
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdfAutomated software refactoring with OpenRewrite and Generative AI.pptx.pdf
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdf
 
Quarkus Hidden and Forbidden Extensions
Quarkus Hidden and Forbidden ExtensionsQuarkus Hidden and Forbidden Extensions
Quarkus Hidden and Forbidden Extensions
 
E-commerce Application Development Company.pdf
E-commerce Application Development Company.pdfE-commerce Application Development Company.pdf
E-commerce Application Development Company.pdf
 
Navigating the Metaverse: A Journey into Virtual Evolution"
Navigating the Metaverse: A Journey into Virtual Evolution"Navigating the Metaverse: A Journey into Virtual Evolution"
Navigating the Metaverse: A Journey into Virtual Evolution"
 
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket ManagementUtilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
 
Launch Your Streaming Platforms in Minutes
Launch Your Streaming Platforms in MinutesLaunch Your Streaming Platforms in Minutes
Launch Your Streaming Platforms in Minutes
 
Need for Speed: Removing speed bumps from your Symfony projects ⚡️
Need for Speed: Removing speed bumps from your Symfony projects ⚡️Need for Speed: Removing speed bumps from your Symfony projects ⚡️
Need for Speed: Removing speed bumps from your Symfony projects ⚡️
 
Artificia Intellicence and XPath Extension Functions
Artificia Intellicence and XPath Extension FunctionsArtificia Intellicence and XPath Extension Functions
Artificia Intellicence and XPath Extension Functions
 
Empowering Growth with Best Software Development Company in Noida - Deuglo
Empowering Growth with Best Software  Development Company in Noida - DeugloEmpowering Growth with Best Software  Development Company in Noida - Deuglo
Empowering Growth with Best Software Development Company in Noida - Deuglo
 
Transform Your Communication with Cloud-Based IVR Solutions
Transform Your Communication with Cloud-Based IVR SolutionsTransform Your Communication with Cloud-Based IVR Solutions
Transform Your Communication with Cloud-Based IVR Solutions
 
GraphSummit Paris - The art of the possible with Graph Technology
GraphSummit Paris - The art of the possible with Graph TechnologyGraphSummit Paris - The art of the possible with Graph Technology
GraphSummit Paris - The art of the possible with Graph Technology
 
openEuler Case Study - The Journey to Supply Chain Security
openEuler Case Study - The Journey to Supply Chain SecurityopenEuler Case Study - The Journey to Supply Chain Security
openEuler Case Study - The Journey to Supply Chain Security
 
Orion Context Broker introduction 20240604
Orion Context Broker introduction 20240604Orion Context Broker introduction 20240604
Orion Context Broker introduction 20240604
 
A Sighting of filterA in Typelevel Rite of Passage
A Sighting of filterA in Typelevel Rite of PassageA Sighting of filterA in Typelevel Rite of Passage
A Sighting of filterA in Typelevel Rite of Passage
 
OpenMetadata Community Meeting - 5th June 2024
OpenMetadata Community Meeting - 5th June 2024OpenMetadata Community Meeting - 5th June 2024
OpenMetadata Community Meeting - 5th June 2024
 
Enterprise Resource Planning System in Telangana
Enterprise Resource Planning System in TelanganaEnterprise Resource Planning System in Telangana
Enterprise Resource Planning System in Telangana
 
AI Genie Review: World’s First Open AI WordPress Website Creator
AI Genie Review: World’s First Open AI WordPress Website CreatorAI Genie Review: World’s First Open AI WordPress Website Creator
AI Genie Review: World’s First Open AI WordPress Website Creator
 
Atelier - Innover avec l’IA Générative et les graphes de connaissances
Atelier - Innover avec l’IA Générative et les graphes de connaissancesAtelier - Innover avec l’IA Générative et les graphes de connaissances
Atelier - Innover avec l’IA Générative et les graphes de connaissances
 
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
 
GOING AOT WITH GRAALVM FOR SPRING BOOT (SPRING IO)
GOING AOT WITH GRAALVM FOR  SPRING BOOT (SPRING IO)GOING AOT WITH GRAALVM FOR  SPRING BOOT (SPRING IO)
GOING AOT WITH GRAALVM FOR SPRING BOOT (SPRING IO)
 

HotSpotコトハジメ