Bir CPU kullanımı yoğun .NET uygulamasını koşutlama için mevcut en iyi seçenekleri nelerdir?

oy
17

Bu açık uçlu bir sorudur. Ne yaklaşımlar dikkate almalıdır?

Oluştur 04/08/2008 saat 17:30
kaynak kullanıcı
Diğer dillerde...                            


5 cevaplar

oy
8

İlk adım bulmak ve sorunu paralellik anlamaktır. O değiştirir tek iş parçacıklı kod daha iyi performans çok kanallı kod yazmak çok kolaydır. "Paralel Programlama için Desenler" (Amazon) anahtar kavramlara harika bir başlangıç olabilir.

Eğer çalışılabilir bir tasarıma sahip olduktan sonra, MSDN Magazine arşivler içinde "eşzamanlılık" konusundaki makaleleri okumaya başlayın (bağlantı) , Jeff Richter tarafından yazılan özellikle bir şey. Bunlar Windows ve .NET özgü parçacığı yapılar üzerinde size somun ve cıvata şeyler verecektir. (C # yoluyla Richter'in "CLR çoklu iş parçacığı bölüm (Amazon) kısa ama çok anlayışlı - tavsiye.)

Cevap 30/08/2008 saat 23:32
kaynak kullanıcı

oy
6

Microsoft'un test edilmek ve kullanılabilir durumda olduğunu .NET bazı paralel uzantıları vardır Paralel Hesaplama Geliştirici Merkezi'ndeki . Onlar Paralel foreach ve PLINQ denilen LINQ paralel versiyonu gibi beklenebilir birkaç ilginç öğeler var. Uzantıları hakkında iyi bilgilerin bazıları üzerinde Channel 9 .

Cevap 04/08/2008 saat 17:41
kaynak kullanıcı

oy
2

@Larsenal

Eğer .NET Intel'in hakkında bir çok tartışma olmuştur dışında şube istiyorsanız Threading Building Blocks C için bir paralel kütüphane ++ olduğunu.

Cevap 04/08/2008 saat 18:41
kaynak kullanıcı

oy
2

Ben de o dikkate iyi seçenekler arasında ise paralel işleme olmayan .NET özgü yaklaşımlar içerebilir düşünüyorum.

Cevap 04/08/2008 saat 18:32
kaynak kullanıcı

oy
0

Birçok seçenek vardır ve iyi çözüm çözmeye çalıştığınız sorunun doğasına bağlıdır. Bir çözmeye çalışıyorsanız embarassingly paralel sorunu daha sonra bölünerek ve önemsiz olacaktır görevleri parallelising. Bu durumda zorluk kullanılan verileri dağıtma ve yönetme gelecek.

Bazı öneriler olacaktır:

Cevap 30/08/2008 saat 23:46
kaynak kullanıcı

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more