June 04, 2020

Alıntı:

>

D'ye C++'tan gelmiş birisi olarak ben de baştan çöp toplayıcıdan şüyheliydim ama kullandıkça bunun hiçbir etkisi olmadığını gördüm. Rahatça sorunumu çözüyorum, sonra dmd'nin -profile=gc komut satırı seçeneğiyle en fazla nerede bellek ayırdığımı bulup bir iki noktayı düzeltiyorum; program hızlanıyor. std.parallelism ve std.concurrency modüllerinden de yararlanınca ortaya çok hızlı işleyen programlar çıktı. :)

Su -profile=gc 'den ben hic mi hic fayda alamadim.

Vibe.d 'de garip bellek sizintilari var bundan eminim artik cunku benim sorunum vibe.d 'yi birakip arsd'i kullaninca gecti. Artik sizinti olmuyor. Sizintilari bulabilmek icin -profile=gc 'yi denedim fakat program o kadar yavasladiki normalden 100 kat veya 120 kat yavas calismaya basladi. Bunu surdan biliyorum normalde her saniye calisan 'update loop' 1-5 dakikada bir calismaya basladi .

Sorun bellek sizintisi uzun zaman calisinca oluyordu ve atiyorum 50mb gibi birset siziyordu her 3-4 saatte bir. Simdi 100 kat yavaslayinca program bellek sizintisi icin cokkkkkk beklemek gerekti insan omrude ne yazikki sinirli :) .

Her neyse ben kullanamadim bu opsiyonu ama soyle guzel bir sey oldu ben dellenince Arsd'nin yazarini Adam Luppe'ye yazdim dedim ki kucuk bir butcem var Arsd 'ye web-socketleri eklermisin. Oda sagolsun lafimi olur dedi para almadan yapiverdi. Onun yaptiklari bende test ettim. Su anda sanki her sey calisiyor en azindan bellek sizintisi bitti. Sadece web-socket'ten mesajlar cok gelince Arsd biraz sasiriyor ama olsun.

Sonuc olarak -profile=gc 'yi basarili olarak kullanma ornegini biraz daha acarsan bence faydali olur Ali Abi.

Erdem

--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]

June 04, 2020

Söylediklerinden belki de -profile=gc'de hata(lar) olduğunu düşünmeye başladım çünkü ben de bazı programlarda "segmentation fault" gördüğüm için kullanamıyorum. Ama doğru çalıştığı zaman programda farkedilir bir yavaşlama olmuyor. Belki aynı hata senin programlarında kendisini "neredeyse sonsuz" döngüye filan soktuğu için yavaşlatıyordur.

Ali

--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]

June 06, 2020

Peki llvm uyarlamasında durum nedir? Sanırım profile=gc'yi dmd için kullanıyorsunuz?

--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]

June 06, 2020

Alıntı (fugur):

>

Peki llvm uyarlamasında durum nedir? Sanırım profile=gc'yi dmd için kullanıyorsunuz?

profile=gc sadece dmd 'de çalışıyor.

Alıntı:

>

Peki llvm uyarlamasında durum nedir?

llvm 'yi kullanan LDC 'yi tercih sebeplerinden en önemlisi herhalde dcompute'dur. DCompute GPU ile kullanımı sağlayan bir kütüphane sadece llvm ile çalışıyor(en azından bir sene önce öyleydi :) ). C++ Thrust(bunu trush diye yazmışım pardon düzelttim şimdi) kütüphanesi gibi bir şey.

Ben LDC'yi ile derliyordum uzun zamandır DMD 'de bir kaç sıkıntı yaşamıştım baya önce websocketlerini kullanırken. Aslında benim değil vibe-d'nin problemleri idi. Ama artık bende DMD kullanıyorum.

Erdem

--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]

1 2
Next ›   Last »