Just In Time Compilation (JIT)

http://www.SiteBuilders.org teknik listesinde güzel bir soru denk geldi. Umarim birilerinin isine yarar.

    —–Original Message—–
    From: Coskun SUNALI [mailto:[email protected]]
    Sent: Tuesday, August 23, 2005 4:44 PM
    To: ‘[email protected]
    Subject: RE: [Teknik] JIT türleri (NGEN)

    Selam,
    1. Ngen.exe kullanarak precompile ettiginiz uygulamalarinizin compile edilmis kodlari disk uzerinde saklanir. Ancak Standart JITter’in compile ettigi kodlar disk üzerinde degil memory’de saklanir. Dogal olarak uygulamanizi ya da sisteminizi kapatip-acmaniz sonrasinda uygulamaniz gerektikce yeniden JITlenir.

    2. Ngen.exe kullanarak precompile ettiginiz uygulamalarin en büyük dezavantaji, run-time sirasinda .Net Framework’un memory durumu gibi sartlari göz önünde bulundurarak otomatik olarak yaptigi optimizasyonlari yapamayacak olmasidir. Cunku kodunuz artik machine level’dadir ve üzerinde degisiklik optimizasyon yapilmasi mümkün degildir.

    Umarim aciklayici cevaplar olmustur.

    Iyi calismalar,
    Coskun SUNALI
    http://sunali.com  

        —–Original Message—–
        From: [email protected] [mailto:[email protected]] On Behalf Of Tolga Yalçin
        Sent: Wednesday, August 24, 2005 2:17 AM
        To: [email protected]
        Subject: RE: [Teknik] JIT türleri (NGEN)

        Coşkun Bey teşekkür ederim bilgiler için. Eğer yanlış anlamadıysam ;

        PRE-JIT yani Install-time JIT türü : .NET uygulamamızın tümünü bir kerede makine kodunu dönüştürüyor. Böylece .NET uygulamaları ilk açıldığında beklememiş olacak.

        Econo veya Default JIT ise : Metotlar sadece ilk çağrıldıkları zaman JIT devreye giriyor ve onları makine koduna dönüştürüyor.

        Buraya kadar güzel. uygulamamızı Pre-JIT yöntemiyle derlemek için NGEN.EXE aracını kullanabilir mişiz. MSDN’de anlatılanlara göre bir NGEN aracı uygulamayı bir kerede derleyip makine koduna dönüştürüyor.

        1 – JIT’in çevirmiş olduğu native kod nerede saklanıyor. Eğer RAM üzerinde duruyorsa makineyi kapatıp açtığımda uygulamam yeniden mi JIT tarafından derlenecek ? Çünkü okuduğum kaynaklar NGEN aracından geçmiş kodların diskte tutulduğunu söylüyorlar.

        2 – Böyle düşündüğümüzde NGEN aracı çok güzel bir yöntem değil mi. Neden sakıncalı görülmektedir.

            —–Original Message—–
            From: [email protected] [mailto:[email protected]] On Behalf Of Coskun SUNALI
            Sent: Monday, August 22, 2005 4:47 PM
            To: [email protected]
            Subject: RE: [Teknik] JIT türleri

            Selam,

            Default JIT haricinde 2 cesit JITter vardir.

            Install-time JIT: Programin ilk acilisinda tum assembly’ler compile edilir.
            Herhangi bir method cagirilacagi zaman, ilk sefer bile cagiriliyor olsa,
            compile edilmis bir assembly icerisinde cagirilacaktir.

            EconoJit: Kaynak problemi olan PC’ler, el bilgisayarlari (handheld) gibi
            sistemler icin önerilir. “unoptimized code” sözcügü ile EconoJit arasinda
            ilk kez bir baglanti görüyorum sizin cümlenizde. EconoJit ile standart
            JITter arasindaki en büyük fark, EconoJit’in memory yetmemesi gibi
            durumlarda, daha onceden compile ettigi assembly’leri dispose etmesidir.

            Iyi calismalar,
            Coskun SUNALI
            http://sunali.com

                —–Original Message—–
                From: [email protected] [mailto:[email protected]] On Behalf Of Tolga Yalçin
                Sent: Mon, 22 Aug 2005 12:40:30 -0700
                To: [email protected]
                Subject: [Teknik] JIT türleri

                arkadaşlar merhaba,

                JIT’in bir kaç türü var. Bunlarla ilgili okul ödevim var. Biraz araştırma yaptım ama net olarak farklarını anlayamadım.

                Kaynaklarda
                “econo JIT: generates unoptimized code, code can be discarded and regenerated
                standard JIT:optimized native code
                “şeklinde geçiyor. Burada “unoptimized code” ile anlatılmak istenen nedir.

                Econo ile Standart arasında uygulama geliştirici açısından nasıl bir fark olabilir.

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.