Jakie są obecne najlepsze opcje dla parallelizing .NET aplikacji CPU-intensywny?

głosy
17

Jest to pytanie otwarte. Co podejścia powinny uważam?

Utwórz 04/08/2008 o 17:30
źródło użytkownik
W innych językach...                            


5 odpowiedzi

głosy
8

Pierwszym krokiem jest znalezienie i zrozumienie równoległość w swoim problemem. To jest naprawdę łatwe do napisania wielowątkowy kod, który nie wykonuje lepiej niż jednowątkowym kodu zastępuje. „Wzorce dla Parallel Programming” (Amazon) jest doskonałym wprowadzeniem do kluczowych pojęć.

Gdy masz funkcjonalną konstrukcję, zacznij czytać artykuły w „Współbieżnym” temat w MSDN Magazine archiwum (link) , w szczególności nic napisane przez Jeff Richter. Ci daje śrub i nakrętek rzeczy na konstruktów gwintowania specyficznych dla Windows i .NET. (Sekcja wielowątkowości w „CLR Richtera poprzez C # (Amazon) jest krótki, ale bardzo wnikliwe - wysoce zalecane).

Odpowiedział 30/08/2008 o 23:32
źródło użytkownik

głosy
6

Istnieje kilka równoległych rozszerzeń .NET, które są obecnie w fazie testów i dostępne w Microsoft Parallel Computing Center Developer . Mają kilka ciekawych rzeczy, które można oczekiwać jak Parallel foreach i równoległej wersji LINQ zwanego PLINQ. Niektóre z najlepszych informacji na temat rozszerzeń jest na kanale 9 .

Odpowiedział 04/08/2008 o 17:41
źródło użytkownik

głosy
2

@Larsenal

Jeśli chcesz się rozgałęziać poza .NET doszło wiele dyskusji na temat Intela Threading Building Blocks , która jest równoległa do biblioteki C ++.

Odpowiedział 04/08/2008 o 18:41
źródło użytkownik

głosy
2

Myślę, że moglibyśmy także podejść non-NET-specyficzne dla przetwarzania równoległego, jeśli te są jednymi z najlepszych opcji do rozważenia.

Odpowiedział 04/08/2008 o 18:32
źródło użytkownik

głosy
0

Istnieje wiele opcji i najlepszym rozwiązaniem będzie zależeć od natury problemu, który próbujesz rozwiązać. Jeśli próbujesz rozwiązać embarassingly równoległego problemu następnie dzieląc i parallelising zadań będzie trywialne. W tym przypadku wyzwanie przyjdzie w dystrybucji i zarządzania stosowanych danych.

Niektóre propozycje to:

Odpowiedział 30/08/2008 o 23:46
źródło użytkownik

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