Ne arayalım?

ARAMIZA KATILIN

BİZE ULAŞIN

Adres:

E-posta:

host/bin/bilisimlife.dll

iletisim@bilisimlife.net

Microsoft .NET CoreCLR Ortamına Manuel Bellek Yönetimi Geliyor 15711571 GÖRÜNTÜLEME

Microsoft Research'ın projesi Project Snowflake, geliştiricilere 'her iki dünyanın en iyilerini' sunmak için manuel bellek yönetimi ve çöp toplama (garbage collections) özelliğini entegre ediyor.

Microsoft Research, emniyetli elle bellek yönetimini ..NET çalışma zamanında çöp toplama (GC) ile entegre etmeye çalışmaktadır. Amaç, geliştiricilere otomatik bellek yönetiminin kolaylığı ve güvenliği ve nesneleri belleğe elle boşaltarak performansı artırma fırsatı vermektir.

Project Snowflake adı verilen çaba bu hafta Cambridge Üniversitesi ve Princeton Üniversitesi'nden Microsoft Research ve ortak yazarlar tarafından yayınlanan bir makalenin konusunu oluşturuyor. Snowflake ile programcılar, GC öbeğinde veya manuel yığınta nesneler ayırmak arasında seçim yapabilir. Snowflake, performansı veya güvenliği tehlikeye atmadan manuel olarak belleği yönetmek için bir açık kaynak. Net çalışma zamanı ile birleştirir. Mevcut uygulamalar, performans düşüşü olmaksızın GC yığını kullanılarak değiştirilmeden çalıştırılır.

Araştırmacılar genel olarak, "Gerçek ortamda .NET CoreCLR uygulamanızdan elde edilen deneysel sonuçlar, özellikle çoklu iş parçacıklı senaryolarda önemli performans artışı gösterdi: Peak working çalışma grubunda 3 kat, çalışma zamanında 2 kat iyileşme" raporunu verdi.

Microsoft'un manuel bellek yönetimi modeli manuel nesnelerin benzersiz sahipleri kavramını temel alır; yığın yığını veya yığın yalnızca manuel yığına ayrılan bir nesneye yapılan referansı tutar. Shields kavramı, manuel nesnelerin güvenli eşzamanlı paylaşımını sağlamak için sunulmuştur. Shields (kalkan), nesne kullanılırken atamaları önlemek için yerel thread deposunda durum oluşturur.

Araştırmacılar .NET GC gibi çöp toplayıcıları (garbage collectors), hızlı thread yerel toplanma dağılımı ve genç nesnelerin toplanması yoluyla yüksek verim sağlarken, GC'nin manuel bellek yönetimine kıyasla performans yükü getirebileceğine ilişkin çalışmalar gösterdi. Bu genel giderler büyük veri analizlerinde ve gerçek zamanlı akış işleme uygulamalarında, bir başka deyişle büyük yığınları izlemek ihtiyacında olduğu için çoğaltıldığını açıkladılar.

Project Snowflake, Microsoft'un açık kaynak kodlu .Net uygulaması, .NET Core olarak bilinen CoreCLR'nin çalışma süresini değiştirir ve el ile bellek kullanan API'lerle standart kitaplıkları genişletir. Elle bellek yönetimi için esnek bir programlama modeli kullanılmış ve nesnelerin rasgele program yerlerine tahsis edilmesine ve eşzamanlı ve güvenle birden fazla iş parçacığı arasında paylaşılmasına izin verilmiştir.

BİR YORUM YAZIN


BENZER HABERLER

21.5.2011

Firefox 5 Beta 1 Çıktı!4465

8.6.2011

Chrome 12 Çıktı!3605