Adelwin Handoyo wrote: > Jadi lets say ada big chunk of codes yah... > Lalu profiler nya akan evaluate itu chunk ato akan coba run once? > Mungkin evaluate yah... > Kalo run once kan malah justru lebih lambat lagi...
Kalau ada bagian code yang nggak pernah dijalankan maka itu nggak bakal dioptimisasi oleh HotSpot. Malah bukan sekedar dijalankan sekali. Kalau bagian code tersebut cuma dijalankan sekali maka nggak bakal jadi bottleneck dan nggak bakal dioptimisasi oleh HotSpot. > Lalu dia evaluate nya berdasarkan apa? > Pola2 code nya kah? Atau apa nih? Ini susah dijelaskan dengan singkat. Seperti saya bilang pengambilan keputusan optimize atau nggak dari HotSpot itu kompleks. Sama kompleksnya dengan cara optimisasi native code dari C compiler. Ini ilmu yang nggak bisa dipelajari sambil lalu atau dijelaskan dengan singkat. Sekedar info. Software yang kompleksitasnya mendekati Operating System adalah Compiler. > Oh iyah.. just to get it straight... hehehehe > .java khan source tuh... > .class itu code nya khan? > Lalu yang di sebut native code itu beda lagi khan yah? Native code di Java kalau lewat HotSpot itu normalnya tidak pernah berbentuk file. Lalu bentuknya bagaimana? Bentuknya adalah memori. Itu salah satu penyebab Java perlu memori besar. Native code di Java cuma hidup di memori. Ini sebenarnya sama seperti kalau kita pakai VB 6 dan debugging. Pada saat debugging VB 6 normalnya kompilasi ke memori bukan ke file. Makanya debugging VB 6 itu cepat dan menyenangkan. Code native VB 6 hidup cuma di memori pada saat debugging. Kalau kita mau native code itu berbentuk file executable maka kita musti pakai compiler Java macam GCJ atau Jet Excelsior. > -----Original Message----- > From: jug-indonesia@yahoogroups.com [mailto:[EMAIL PROTECTED] > On Behalf Of Samuel Franklyn > Sent: Thursday, June 05, 2008 10:46 AM > To: jug-indonesia@yahoogroups.com > Subject: Re: [JUG-Indonesia] Re: puts nya C/C++ vs. System.out.println nya > Java (Result: Java kalah telak!) > > Adelwin Handoyo wrote: >> Kalo dibilang 2 overhead utama java itu membuat lambat... >> Berarti sebenernya waktu process nya sendiri lebih cepet dong dari C?? > > Kalau sudah teroptimasi maka Java bisa lebih cepat dari C. > Tapi ini bisa lho bukan pasti. Karena proses optimasi > dari HotSpot itu sangat kompleks. > >> Ada yang mau di Tanya ke oom sam nih... >> Optimasi code di java itu all at once di depan... ato dia akan optimize a >> few blocks of codes in front? > > Bukan begitu. Tapi lewat cara profiling dan konversi ke native code. > Jadi HotSpot compiler Java dari Sun itu dalamnya ada profiler. > Pada saat aplikasi dijalankan maka HotSpot akan analisa bagian > mana yang lambat dan menentukan apakah bagian yang lambat tersebut > bisa di optimasi dengan konversi ke native code. Kalau HotSpot > berpendapat bahwa bagian tersebut bisa makin cepat dengan konversi > ke native code maka HotSpot akan melakukan konversi ke native code > yang teroptimisasi. Konversi ke native code yang teroptimisasi ini > mirip kompilasi dari C compiler pakai flag optimisasi. Trik-trik > optimisasi native code dari HotSpot tidak kalah dengan trik-trik > optimasasi dari C compiler. Tapi HotSpot butuh waktu untuk > melakukan profiling dan kompilasi jauh lebih lama dari C compiler. > C compiler kan tidak melakukan profiling dan cuma melakukan > optimisasi native code. > >