SORU
1 Mayıs 2011, Pazar


Haskell hafif konuları yükü ve multicores kullanımı

"Real World Haskell" kitap, eşzamanlılık ve paralellik. bölüm okuyordum Benim sorum aşağıdaki gibidir:

  • Beri Haskell ipliklerden gerçekten sadece birden çok "sanal" iş parçacığı içinde bir "gerçek" OS-parçacığı, yani o yaratma bir sürü (1000) değil bir köklü etkisi üzerinde performans? I. e., yükü forkIO ile Haskell bir iş parçacığı oluşturma gerçekleşen (neredeyse) yok denecek kadar az olduğunu söyleyebilir miyiz? Mümkünse pactical örnekler getirin lütfen.

  • Hafif iş parçacığı kavramı çok çekirdekli mimarileri benefints kullanarak bize engel değil mi? Anladığım kadarıyla, iki Haskell konuları bu açıdan çok işletim sistemi açısından tek bir iş parçacığı, çünkü onlar iki ayrı çekirdek üzerinde aynı anda çalıştırmak mümkün değil. Ya da Haskell çalışma zamanı, bazı zekice hileler çoklu İŞLEMCİ kullanımı yapılabilir emin olmak için ne yapıyor?

CEVAP
1 Mayıs 2011, Pazar


DZD çalışma zamanı yürütme ortamı sparks milyarlarca, birden fazla donanım çekirdekleri üzerinde dağıtılan basit konuları, binlerce destek sağlar. -threaded derleme ve RTS -N4 bayraklar çekirdek istenen numaranızı ayarlamak için kullanın.

sparks/threads/workers/cores

Özellikle:

bu onları bir sürü (1000) oluşturma performans üzerinde ciddi bir etkisinin olmayacağı anlamına mı geliyor?

İyi, creating 1,000,000 of them kesinlikle mümkün değildir. 1000 bile olmayacak ne de olsa çok ucuz. İş parçacığı oluşturma kriterleri," GHC is very, very good. "iplik ring gibi görebilirsiniz

Hafif iş parçacığı kavramı çok çekirdekli mimarileri benefints kullanarak bize engel değil mi?

Hiç de değil. 2004 yılından bu yana GHC has been running on multicores. Çok çekirdekli çalışma zamanı mevcut durumunu tracked here.

Ne işe yarar? Bu mimarlık okumak için en iyi yer, 7**: gazetede

DZD çalışma sistemi basit konuları milyonlarca destekler işletim bir avuç üzerine onları çoklu sistem iş parçacığı, her bir fiziksel İŞLEMCİ için bir kabaca. ...

Haskell iş parçacığı işletim sistemi tarafından yürütülür çalışan iş parçacığı, iş parçacığı. Kabaca korumak hangi iş parçacığı fiziksel İŞLEMCİ başına çalışan iş parçacığı, ama tam olarak olabilir şu andan itibaren değişir ...

İş parçacığı değişebilir beri, tam olarak korumak Yürütme İçeriği (YÖK) her CPU için Haskell. YÖK bir OS çalışanı olan tüm verileri içeren veri yapısı iplik Haskell konuları . idam etmek gerekir

Konuları oluşturulmasını izlemek ve infaz edecekler, via threadscope. nereye. Burada, örneğin çalışan ikili ağaçlar kriter:

threadscope

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • isupportthegosselins

    isupporttheg

    6 Aralık 2009
  • katherine gomez

    katherine go

    1 Aralık 2011
  • max2sims2

    max2sims2

    19 Kasım 2008