Aplikacje wielowątkowe, wieloprocesowe

Aplikacje wielowątkowe, wieloprocesowe
TO
  • Rejestracja: dni
  • Ostatnio: dni
0

Witam,
Chciałbym napisać aplikacje, która będzie dość optymalnie wykorzystywała procesory <ort>kilku rdzeniowe</ort>.
Sam podział na wątki/procesy nie gwarantuje że będą one rozdzielone na różne rdzenie.
Możecie mi podać jak tego dokonać - jakie języki programowania , jakie metody (interesuje mnie zarówna system windows jak i linux/unix).
Możecie polecić jakąś literature?

OT
  • Rejestracja: dni
  • Ostatnio: dni
0

Poszperaj tutaj:

http://software.intel.com/en-us/articles/getting-started-with-parallel-programming-for-multi-core
http://software.intel.com/en-us/forums/

Jeżeli znasz sie na programowaniu wielowątkowym, to tam masz kilka wskazówek związanych z wykorzystaniem wielu rdzeni

adf88
  • Rejestracja: dni
  • Ostatnio: dni
0

Dla Windows:
SetProcessAffinityMask, SetThreadAffinityMask - przydzielisz nimi proces/wątek na konkretne procesory logiczne.
Numery dostępnych procesorów odczytasz funkcją GetProcessAffinityMask.

TO
  • Rejestracja: dni
  • Ostatnio: dni
0

a coś pod linuxa?

Herk
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 272
Grymek
  • Rejestracja: dni
  • Ostatnio: dni
0

pod linuxem dzisiaj w "linux magazine" czytalem jest biblioteka OpenMP do wielordzeniowych prockow. Rzeczywiscie jest tam prosty podzial zadan :D

adf88
  • Rejestracja: dni
  • Ostatnio: dni
0

OpenMP jest również dla Win. Visual C++ ładnie go wspiera (http://msdn.microsoft.com/en-us/library/tt15eb9t.aspx).

  • Rejestracja: dni
  • Ostatnio: dni
0
adf88 napisał(a)

OpenMP jest również dla Win. Visual C++ ładnie go wspiera (http://msdn.microsoft.com/en-us/library/tt15eb9t.aspx).

niestety express - przynajmniej w wersji 2005 nie wspiera :-( tj. nie ma dll w instalacji, a dociągniecie ich z wersji standard/pro pewnie inelegalne.

skalniak
  • Rejestracja: dni
  • Ostatnio: dni
0

W takim razie możesz ręcznie obsługiwać wątki. Jest to bardziej pracochłonne niż użycie dyrektyw OpenMP. Windows powinien umożliwić korzystanie z pthread (czyli sposób ktory poleciła osoba dając link do wątków w linux).

Pozdrawiam
skalniak

adf88
  • Rejestracja: dni
  • Ostatnio: dni
0

Jest jeszcze MPI i pewnie wiele innych.

Johny_Morfina
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 448
0

jeszcze cos takiego jak POSIX jest...

skalniak
  • Rejestracja: dni
  • Ostatnio: dni
0
Johny_Morfina napisał(a)

jeszcze cos takiego jak POSIX jest...

Czyli pthread (wcześniej proponowane) ( pthreads jest ze standardu POSIX).

Pozdrawiam
skalniak

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.