Very deep and presenting in simpler way. Understood your ground work and effort to make it more simple. Hats off you Bro.. Thanks.
@AsymptoteEducation3 жыл бұрын
An absolute gem This is the kind of detail I look for.
@UladzislauSidliarevich5 жыл бұрын
On the first slide - bytecode is not compiled into machine code, it is interpreted by the JVM into machine code. On the second slide it is correctly described =D
@pranavhs45353 жыл бұрын
Super explanation , keep going Now I understood completely. Before you watch this video I recommend reading about AOT,JIT,Compiler s and interpreters which helped me to understand fully.
@djohnjimmy3 жыл бұрын
This is an awesome simple explanation of what everyone else seemed to make very complicated videos about. Great video. Thank you buddy
@malathim51384 жыл бұрын
very good explanation. thank u so much. I have been spending time for more than 10 hours to understand how JIT works. Finally I understood the concept easily.
@chen.engchan3 ай бұрын
It is really easy to follow all your explanations. Thank you for doing this!
@abhinavomprakash4884 Жыл бұрын
Bro, this was an excellent talk. Keep the content coming!
@apoorvagupta41086 ай бұрын
Great Job. Through your video it was easy to understand the difference and flow of execution.
@VinodMoorkoth3 жыл бұрын
Great video man. I was actually looking for CPython implementation, but still watched the whole video.Too good. Thank you.
@muzza494 жыл бұрын
wow wow wow! great video, really cleared a lot of fog!
@jayoolong2793 ай бұрын
What a gem of a video, thank you for making this
@gokuls99293 жыл бұрын
Fantastic! Your videos do justice to the name of the channel - they defog technology!
@MrMikomi4 жыл бұрын
Great tutorial, as ever. Just wondering what real-world improvements in performance are to be expected by performing these AOT native code compilation steps. Anyone know?
@utkarshgupta29092 жыл бұрын
This guys tells thing totally unique, I request you to present more content. Everytime I come on this channel I learn something new
@premraj.m3 жыл бұрын
This is the best video for JIT and AOT.. thanks
@thalathotitharunprabhakar33902 жыл бұрын
Thank you for the wonderful content. This video helped me to understand AOT and JIT clearly.
@pgaikwad063 жыл бұрын
Very nice explaination! Cleared few finer doubts as well.. Thanks
@noahflorin-sefton29924 жыл бұрын
Good stuff. I like the way you went straight in as well.
@raz02292 жыл бұрын
Crystal clear. Exactly what I was looking for
@smarttrupti20075 ай бұрын
Wow. . Great explanation. Thanks
@ramkrishnakulkarni82895 жыл бұрын
Awesome work man!!! 🙌🏻🙌🏻👌 deep and upto the mark. Please share more such videos. Thank you.
@SRUJANCH213 жыл бұрын
Superb explanation, Thanks for sharing this kind of video's
@rhul00173 жыл бұрын
Crisp and clear, good brother💪
@TheKurama94 жыл бұрын
Very well explained. Thank you so much!
@DurgaShiva7574 Жыл бұрын
best best best, u r the best, hats off 2 u, not sure, why u have stopped making videos
@ritushrivastava885 жыл бұрын
Nicely explained. Thanks!!
@SureshramT3 жыл бұрын
Exceptional screenplay 🔥
@higiniofuentes25519 ай бұрын
Thank you for this very useful video!
@dyhigsth46322 жыл бұрын
Great, got the high level view perfectly
@nicholaicorbie2 жыл бұрын
Excellent explanation
@prasanthrajendran16115 жыл бұрын
Nice video, simply could able to understand the java compilation insights...Kudos..Bravo Zulu..
@tatha20013 жыл бұрын
Superb explanation 👍
@ravingswe2 ай бұрын
Top tier tutorial video
@avinashsingh-hd4pl5 жыл бұрын
Best explanation ever on youtube
@rizwanfirdous5 жыл бұрын
Excellent explanation in short.
@mirageman24 жыл бұрын
Great and dense information, thanks a lot.
@sachinprabhuk62415 жыл бұрын
Awesome explanation. Thank you very much
@richardwang34384 жыл бұрын
This is awesome, thank you
@asidz4 жыл бұрын
Brilliant explanation. Thanks!
@higiniofuentes25519 ай бұрын
Since then, AOT is for more architectures? Can you give the options needed to optimze the AOT compilation? Thank you!
@basicneed135 жыл бұрын
Keep up the good work. Hope you will get more subscriber Also keep adding more videos...
@theshermantanker70432 жыл бұрын
I'd like to point out that the AOT Compiler has been removed as of Java 16, but not to worry, that's because it's going to be replaced with a new (and better) one!
@DivijShrivastava5 жыл бұрын
Very nice video. Please keep posting.
@shalomzilb36894 жыл бұрын
Solid explanation!
@ramprasad16965 жыл бұрын
Nice video and explanation , can you please provide the resources also form where you have collected the information so that we can learn more anyway thanks
@PrinceRambade_Official5 жыл бұрын
Very nice explanation...
@rakeshtm27505 жыл бұрын
Awesome videos and explanation...
@tanaykamath14154 жыл бұрын
Brilliant video 👍👍🔥🔥
@GK-rl5du4 жыл бұрын
C1 and C2 compilers need runtime profile data to produce optimized machine instructions. AOT does bytecode to machince code translation even before running the code once, so is it safe to assume that AOT compiled java code will run slower than JIT compiled one?
@DefogTech3 жыл бұрын
Since compiling code at runtime itself takes time, and since until then the code is run in interpreted manner, the code can be slow even in JIT. Its use-case specific.
@GK-rl5du3 жыл бұрын
@@DefogTech So we have to compromise between fast startup times (With AOT) and faster application execution times (With JIT). Correct?
@doubleDip245 жыл бұрын
Awesome work . thumbs up.
@VictorHernandez-zi7ll3 жыл бұрын
Great content.
@shubhamdeshkar16854 жыл бұрын
This is cool. Please include resources in your videos as well.
@ChrisAthanas2 жыл бұрын
Excellent
@mgking777 Жыл бұрын
great video!
@garimadwivedi95415 жыл бұрын
Thanks for explaining everything
@shom-tv4 жыл бұрын
great material
@hotmandead15 жыл бұрын
Excellent Video!
@uzdik.student3 жыл бұрын
6:13 Could Object be stored directly in the Stack during Escape Analysis? Or does it mean that Object is converted into some form of Primitives to fit in the Stack?
@mahendharkhedhar78875 жыл бұрын
Superb content
@MsRoshancool4 жыл бұрын
nice work.
@amritshrivastava45233 жыл бұрын
JVM is very smart and so is your teaching methodology :) @Defog Tech
@DefogTech3 жыл бұрын
Thanks! 😃
@tivmego3 жыл бұрын
@@DefogTech Please Defrog, what happened? We haven't got any new videos in recent times. How can we help? We want only you to teach these concepts because of the simplicity.
@DefogTech3 жыл бұрын
@@tivmego havent had the time due to my new role (currently handling 5 teams, 30 engineers).. though I miss making videos. Planning to create paid video courses so that it can be financially sustainable, and will allow me to do this full time. Bored of the corporate job to be honest :) In addition to KZbin also want to build a community of us folks teaching each other. Lets see how it goes
@tivmego3 жыл бұрын
@@DefogTech Oh. So sorry to hear this. Hope you can put together the paid tutorial so we can continue to get the best of you. Thanks for replying.
@タクリス Жыл бұрын
AMAZING!
@nageshmh Жыл бұрын
awesome 😍
@pandit-jee-bihar5 жыл бұрын
Java is slowly moving towards traditional compilation.
@C0pr44 жыл бұрын
Clarification nailed , you got that boss !
@hiteshelaprolu16675 жыл бұрын
First of all kudos to you for precise explanation of jvm internal and concurrency concepts @8:42 u mentioned that as of java 9 it supports only Intel architecture .what about mobile sdk and other architecture portability
@DefogTech5 жыл бұрын
It's not just Intel but any x86 architecture (includes AMD). AOT project is now merged with GraalVM. ARM support is not there yet AFAIK
@mathrupradeep5 жыл бұрын
Good videos. Thanks
@swapnilc175 жыл бұрын
Deep concept. Which all resources were referred for understanding this concept sir ?
@DefogTech5 жыл бұрын
Lot of resources - JEP for AOT in Java9, Stackoverflow, couple of videos on KZbin, and lot of articles about inner workings of JVM
@balasubramanian79975 жыл бұрын
Hi defog tech, what will happen if we load more than required size of compiled libraries to code cache by AOT
@shubham303725 жыл бұрын
Awesome video ....... clear explanation Hats off to you bro... jst wanted to know what is ur reference point or book for this in-depth knowledge?
@DefogTech5 жыл бұрын
For java, I refer to book Concurrency in practice, and also memory model specification
@shubham303725 жыл бұрын
Defog Tech Thanks sir 😊
@migueloliveraangeles3 жыл бұрын
Thanks!
@girjashankar79253 жыл бұрын
I want to ask a question ,why languages like c++,c dont improve to make itself machine independent? why cant they use interpreter directly just like javascript or bytecode concept like java?
@DefogTech3 жыл бұрын
more often than not you dont need that much portability, you can compile language to your platform and run it on local, while CI/CD pipeline can compile it for integration/production environments. so there is no major downside to compiling
@hix00714 жыл бұрын
This means java is interpreted and compiled language both ? So if I have a very simple java program and all it does is print hello, then nothing will be compiled as such. Everything can be interpreted. Is my understanding correct ? @Defog ?
@handleh3 жыл бұрын
Yes
@vijayakumarvj2 жыл бұрын
amazing . pls share ppt
@haykmkrtchyan70934 жыл бұрын
I have a question. Assume that JVM compiled our add() method 5000 times, and the threshold is also 5000. If we will change our add() method functionality, will the byte code from cache conform for the changed add() method bytecode? I mean if we change our add() method functionality, does it need to compile our method again, because if it will get the byte code from cache, it will be not actual) Or maybe I didn't understand something? Please explain :)
@prajwal58172 жыл бұрын
if you change code then you need compile whole thing anyway
@liyuling19844 жыл бұрын
Good
@User-ow7rn3 жыл бұрын
sir, can you make a video on difference between interface and abstract class based on logic, not the rules or keyword differences. i mean why do we need interface if we have abstract class. we can undefined every method of abstract class. it will behave just like interface too. and if you are gonna say to overcome diamond problem then why will we overcome that problem if we are going to define the method definition side another method. i mean what's the point. and even if we can overcome method ambiguity of diamond problem, variable ambiguity is still there which is handled by accessing variable of interface using interfaceName.varname then why cant we do this way for accessing methods?
@balakrishnajangita66385 жыл бұрын
Hat's off boss
@daanishsarguru30445 жыл бұрын
Thanks Sir
@souvik55603 жыл бұрын
Fantastic (Y)
@mohbit33364 жыл бұрын
JDK 9's AOT is restricted to Linux x64 systems not x86 i read it on some other website
@nadimmatoussi87724 жыл бұрын
There is 64 bits x86 CPUs
@edwindavidcontreras46154 жыл бұрын
Crack !! Thx
@pandit-jee-bihar5 жыл бұрын
Java should have a flag to turn off interpreter and get machine code only for entire code if needed.