Aktualności:

W MEDIA znajdziesz grafiki, banery i avatary

Menu główne

GPU FP64, AVX-512, AffinityWatcher and the Lasso process.

Zaczęty przez chr80♂°🛰�, 06 Sierpień 2024, 23:40

chr80♂°🛰�

Wrzucam co mi się udało znaleźć/uzyskać odpowiedzi na forum Asteroids@home.
Pytania:
1. Czy w Asteroids@home lub innych projektach BOINC są aplikacje GPU wykorzystujące FP64 (double precision), ponieważ mam 3 x Tesla K80, FirePro W8100, 2x Instinct MI8?

2. Czy w Asteroids@home są aplikacje wykorzystujące AVX-512 w CPU?

I czy fakt, że procesor ma więcej instrukcji z pakietu AVX-512 jest lepszy, np. mobilny CPU i7 11850H, jest lepszy?

3. Czy AffinityWatcher i proces Lasso są pomocne w Asteroids@home?

Odpowiedzi:
1/ tak, aplikacja w dużym stopniu opiera się na FP64 i sądzę, że Einstein również używa FP64, ale w mniejszym stopniu.

2/ tak, aplikacja wykorzystuje instrukcje SIMD na zgodnych procesorach, w tym AVX-512 dla x86 i ASIMD dla architektur ARM.

Czy fakt, że procesor ma więcej instrukcji z pakietu AVX-512, jest lepszy?

Wykorzystujemy podzbiory AVX-512f i AVX-512dq. Jeśli procesor nie obsługuje ich, wracamy do FMA (AVX). Podczas gdy AVX-512 obejmuje dodatkowe podzbiory dla wyspecjalizowanych zadań, takich jak AI lub szyfrowanie, aplikacja nie zyskuje z nich żadnych korzyści.

https://en.wikipedia.org/wiki/AVX-512

3/ Aplikacje PrimeGrid są w dużym stopniu zależne od pamięci podręcznej, a skonfigurowanie powinowactwa może pomóc zmniejszyć narzut między chipletami w procesorach AMD lub między rdzeniami P/E w procesorach Intel. Nie przewiduję jednak znaczących ulepszeń w aplikacji Asteroids.

chr80♂°🛰�

AffinityWatcher i Process Lasso w Asteroids@home:

AffinityWatcher i Process Lasso to narzędzia do zarządzania zasobami procesora, które mogą być pomocne w optymalizacji działania projektów BOINC takich jak Asteroids@home.

AffinityWatcher pozwala na przypisywanie zadań do konkretnych rdzeni procesora, co może pomóc w uniknięciu przeciążenia niektórych rdzeni i poprawić ogólną wydajność systemu.

Process Lasso oferuje bardziej zaawansowane opcje zarządzania procesami, takie jak dynamiczne przypisywanie priorytetów, które mogą pomóc w utrzymaniu płynności działania systemu podczas wykonywania zadań BOINC.

chr80♂°🛰�

#2
Instrukcje AVX-512 i ich zastosowania
Instrukcje AVX-512 (Advanced Vector Extensions 512) to rozszerzenia zestawu instrukcji SIMD (Single Instruction, Multiple Data) w procesorach x86, które umożliwiają przetwarzanie wielu danych równocześnie, co znacząco przyspiesza wykonywanie obliczeń równoległych. Poniżej znajduje się krótki opis każdej z wymienionych instrukcji AVX-512:

AVX-512 Foundation (AVX512F):

Podstawowy zestaw instrukcji AVX-512, który oferuje podstawowe operacje wektorowe na 512-bitowych rejestrach. Obsługuje operacje arytmetyczne, logiczne, przesunięcia i konwersje.
AVX-512 Bit Algorithms (AVX512BITALG):

Instrukcje specjalizujące się w operacjach bitowych, takich jak obliczenia Hammingowej odległości i funkcje bitowej popcount (zliczanie liczby jedynek w binarnym przedstawieniu liczby).
AVX-512 Byte and Word (AVX512BW):

Rozszerza operacje wektorowe na 512-bitowych rejestrach, umożliwiając operacje na 8-bitowych (bajtach) i 16-bitowych (słowach) elementach danych.
AVX-512 Conflict Detection (AVX512CD):

Zestaw instrukcji do detekcji konfliktów pamięci, co jest użyteczne przy implementacji algorytmów równoległych, np. w bazach danych.
AVX-512 Doubleword and Quadword (AVX512DQ):

Umożliwia operacje wektorowe na 32-bitowych (doubleword) i 64-bitowych (quadword) elementach danych, rozszerzając funkcjonalność AVX-512F.
AVX-512 Integer Fused Multiply-Add (AVX512IFMA):

Instrukcje do operacji FMA (Fused Multiply-Add) na danych całkowitych, co przyspiesza obliczenia związane z kryptografią i innymi zastosowaniami intensywnie korzystającymi z arytmetyki całkowitej.
AVX-512 Vector Byte Manipulation Instructions (AVX512VBMI):

Instrukcje do manipulacji bajtami w wektorach, takie jak permutacje i kompresja/dekompresja danych.
AVX-512 Vector Byte Manipulation Instructions 2 (AVX512VBMI2):

Rozszerzenie AVX512VBMI, które dodaje więcej funkcji manipulacji bajtami, zwiększając elastyczność i wydajność operacji na danych.
AVX-512 Vector Length Extensions (AVX512VL):

Pozwala na operacje wektorowe z wykorzystaniem mniejszych rejestrów (128-bitowych i 256-bitowych) w kontekście AVX-512, co umożliwia lepsze wykorzystanie zasobów i zmniejsza zużycie energii.
AVX-512 Vector Neural Network Instructions (AVX512VNNI):

Zoptymalizowane instrukcje do przyspieszenia operacji związanych z sieciami neuronowymi, takich jak konwolucje i inne operacje macierzowe.
AVX-512 VP2 Intersect (AVX512VP2INTERSECT):

Instrukcje do równoległego porównywania i operacji zbiorowych na danych wektorowych, takich jak przecięcie zbiorów.
AVX-512 Vector Population Count Doubleword and Quadword (AVX512VPOPCNTDQ):

Instrukcje do szybkiego zliczania liczby jedynek (popcount) w 32-bitowych i 64-bitowych elementach wektorowych, co jest przydatne w algorytmach kryptograficznych i kompresji danych.
Zastosowania i Wydajność
Każdy zestaw instrukcji AVX-512 jest zaprojektowany do specyficznych zastosowań, które mogą znacząco poprawić wydajność obliczeń w różnych dziedzinach, takich jak:

Obliczenia naukowe i techniczne: Zwiększona precyzja i szybkość przetwarzania dużych zestawów danych.
Kryptografia: Przyspieszenie algorytmów szyfrowania i deszyfrowania.
Analiza danych: Szybsze operacje na dużych zbiorach danych.
Sztuczna inteligencja i uczenie maszynowe: Zoptymalizowane operacje na sieciach neuronowych.
Grafika komputerowa i multimedia: Lepsze przetwarzanie i edytowanie obrazów i filmów.

offline

Cytatmanipulacja obrazami i filmami.

Wszystko jasne ...

chr80♂°🛰�

Cytat: SzaMoT_🪄 w 07 Sierpień 2024, 00:45
Cytatmanipulacja obrazami i filmami.

Wszystko jasne ...
Raczej ciemne.
Mój błąd nie zrobiłem korekty po tłumaczeniu.
Dzięki już poprawiam.

tito

To dlatego obróbka filmów z nurkowania przyśpieszyła niewspółmiernie do zmiany 3900->7950.
Przerabia mi teraz filmik ~ 6 x szybciej.

chr80♂°🛰�

#6
Cytat: tito w 07 Sierpień 2024, 10:42To dlatego obróbka filmów z nurkowania przyśpieszyła niewspółmiernie do zmiany 3900->7950.
Przerabia mi teraz filmik ~ 6 x szybciej.

A dzisiaj premiera Zen 5, procesorów 9600X i 9700X. Nazwa kodowa Granite Ridge.
Na tle problemów Intela: Użytkownicy procesorów Intela, mogą napotkać poważny problem. Dziennikarskie śledztwo, które wynikło z licznych zgłoszeń problemów z CPU, ujawniło, że procesory Intela 13. i 14. generacji mają prawdopodobnie wadę fabryczną.




chr80♂°🛰�

#8
Cytat: SzaMoT_🪄 w 07 Sierpień 2024, 19:37tak dali ponoć więcej gwarancji
Przerzucili na producentów płyt głównych.
I przedłużyli na wadliwe generacje 13 i 14, gwarancję na 5 lat.

chr80♂°🛰�

Czy procesor Xeon Phi 7120A lub inne modele z tej rodziny można wykorzystać projektach BOINC?

Nie znalazłem żadnych projektów, które miałyby aplikacje oprogramowania obsługujące karty, chociaż Phi obsługują OpenCL, więc można przepisać aplikację OCL, aby odciążyć kartę Phi i zapewnić niezbędne tłumaczenia sterownikom. Podejrzewam, że takie przedsięwzięcie byłoby prawdopodobnie wyjątkowe.

Teraz są również wersje x200 z gniazdem LGA3467 (SVLCLGA3647) mogą być uruchamiane jako główne procesory systemowe, tak jak każdy inny komputer. Mogą one natywnie uruchamiać system operacyjny i BOINC, a nawet obsługiwać AVX512. Raporty zdają się wskazywać, że wydajność jest dość słaba, ale płytę i 7250 można mieć za bardzo małe pieniądze, a może nawet nie trzeba dodawać pamięci RAM (16 GB w procesorze).
Wolne działanie/ słaba wydajność może wynikać z małem ilośći cache L3 - 34MB, a tryb turbo działa gdy tylko pracuje kilka rdzeni.
Niska wydajność jednowątkowa: Xeon Phi ma dużo rdzeni, ale ich wydajność jednowątkowa jest niska w porównaniu do współczesnych procesorów.
Mała ilość pamięci cache L3, Xeon Phi ma stosunkowo małą pamięć cache L3, co może ograniczać wydajność przy obliczeniach wymagających częstego dostępu do pamięci.
Wymagania dotyczące pamięci RAM: Choć Xeon Phi x200 może posiadać wbudowaną pamięć RAM (MCDRAM), jest ona mniejsza i wolniejsza niż tradycyjna pamięć RAM, co również może wpłynąć na wydajność.

Czy temat optymalizacji kodu i potencjalnego dostosowania istniejących aplikacji do specyficznych cech tej architektury, np. Xeon Phi, można by zrealizować np. przy użyciu chatGPT?

EDU Enthusiast

#10
Jak ostatni raz bawilem sie z Phi to byla normalna x86 maszynka zamknieta w sobie z linuxem; (bez roznic architektoralnych)
Pozniejsze modele juz sie nie chowaly na pcie tylko mialy caly komputer.
Phi Socket lga 3467 -> zadna normalna plyta glowna o ktorej jestem swiadom nie wezmie tego procka; ale sa komputery ktore byly zbudowane dla tego
SuperMicro GS5A-7 Server

Lecz jesli chodzi o performance, kazdy z tych corow to jest intel atom. Wiec ok zrobisz 64 czy cos taskow na raz ale performance bedzie gorszy od zwyklego 14c broadwella robiacego avx2. Jest sens gdyby mialo sens robic 32-48c na pojedynczy task avx512. (avx512 tracisz jakies 200MHz na kazdym core)


https://www.ebay.com/itm/375590320321?
Jesli nie pojdzie powyzej 300-350 to moge zakupic i spojzec jak to dziala dzis; spodziewam sie ze tragicznie hehe, i tragicznie duzo wattow zzera.

chr80♂°🛰�

A co sądzisz o zastosowaniu procesora Xeon E7-8893 v4 4c / 8t 3.2 GHz- 3.5 GHz 60 MB - L3. Czy ta ilość L3 dałaby przewagę w BOINC? E7-8893 v4 ma 60 MB pamięci podręcznej L3, co jest znaczną ilością, zwłaszcza w porównaniu z większością standardowych procesorów konsumenckich.

https://www.cpu-world.com/CPUs/Xeon/Intel-Xeon%20E7-8893%20v4.html

Ewentualnie Intel Xeon E7-8894 v4 24c / 48t 2.4 GHz - 3.4 GHz 60 MB - L3 to znacznie mocniejszy procesor niż wcześniej omawiany E7-8893 v4.
I można mieć maszynę która ma x8 takich cpu na pokładzie czyli 192c/384t.

EDU Enthusiast

Te procki sa ok, zostaly zrobione na platformy dla 4-8 cpu; lecz dzialaja w wiekszosci 1-2 cpu.
4-8 cpu platformy maja problem z bardzo zpowolnionej pamieci ram; w praktyce to bedzie negowalo jakiekolwiek potencjalnie benefity z cachu.

Z prawie takim samym cachem (55M) sa 22 corowce (i nie maja juz problemow z slimakowej pamieci)
e5-2696v4
e5-2699v4 -- jedyny nie oem ~ jakies 120-130 usd, cena jest wysoka, raczej nie oplaca sie - e5-2690v4 idzie za $30
e5-2699Av4
e5-2699Cv4
e5-2699Rv4
e5-26999Pv4

Mozna zawsze wylaczyc dodatkowe thready by miec lepsze clocki na turbo. (Wiecej L3 cachu dla reszty corow)
Za ta cene i perf juz lepiej zafundowac sobie ryzena 5800x3d (96M) - juz jestesmy w podobnych cenach - albo 3950x/5950x (ktore maja po 64M).

(5000's ryzen pojedynczy core jest jakies 40% szybszy od broadwella.

5950x (package 105W)
L1: 1M
L2: 8M
L3: 64M

5800X3d (package 105W)
L1: 512K
L2: 4M
L3: 96M

E5-2699 v4 (145W TDP)
L1: 1.4M
L2: 5.5M
L3: 55M


*Zaden z wymienionych prockow nie posiada avx512

EDU Enthusiast

#13
Cytat: EDU Enthusiast w 18 Sierpień 2024, 14:17https://www.ebay.com/itm/375590320321?
Jesli nie pojdzie powyzej 300-350 to moge zakupic i spojzec jak to dziala dzis; spodziewam sie ze tragicznie hehe, i tragicznie duzo wattow zzera.

Ostatine 6h zaznaczylem 350 usd; Jesli wygram to wrzuce tego hosta za kilka dni jak dojdzie.
(jesli wygram i jak bedziesz chcial to moge ci go podlaczyc/udostepnic jak podlacze na jakis czas pozniej idzie spowrotem na sell)


tutaj wygrzebalem cpu-z win10 z tym cpu (ale to nie do tego byl zrobiony ten szmelc)
http://valid.x86.fr/8cn98y

EDU Enthusiast


chr80♂°🛰�

Cytat: EDU Enthusiast w 21 Sierpień 2024, 00:32update, niestety przegralem; Poszedl za $360.
bywa i tak. Ale nie umarł ten co sprzedaje stare komputery.

chr80♂°🛰�

Cytat: EDU Enthusiast w 20 Sierpień 2024, 16:46
Cytat: EDU Enthusiast w 18 Sierpień 2024, 14:17https://www.ebay.com/itm/375590320321?
Jesli nie pojdzie powyzej 300-350 to moge zakupic i spojzec jak to dziala dzis; spodziewam sie ze tragicznie hehe, i tragicznie duzo wattow zzera.

Ostatine 6h zaznaczylem 350 usd; Jesli wygram to wrzuce tego hosta za kilka dni jak dojdzie.
(jesli wygram i jak bedziesz chcial to moge ci go podlaczyc/udostepnic jak podlacze na jakis czas pozniej idzie spowrotem na sell)


tutaj wygrzebalem cpu-z win10 z tym cpu (ale to nie do tego byl zrobiony ten szmelc)
http://valid.x86.fr/8cn98y
Jest takie cudo Xeon Phi KNL Motherboard (K1SPE) + CPU (7210 or 7250), Server PSU Included:
https://www.ebay.com/itm/186414784071?

EDU Enthusiast

za duzo sobie chce za to; to jest eol sprzet bez prawdziwego uzytku (IT smietnik).

(To sie nie oplaca - on chce 400 buckow za plyte, procek i cooling -> bez ramu, bez chassis.)
(Poprzedni deal byl naprawde dobry i mial wszystko.)

EDU Enthusiast

https://www.ebay.com/itm/156324937303
Rozmawiam z tym gosciem by cos ubic do $400 i wtedy moge kupic.

chr80♂°🛰�


EDU Enthusiast

Nie mam duzych nadzieji; bynajmniej bede patrzyl na caly setup (nie starsze karty pcie - z nimi jest problem, brakuje driverow na podlaczenie sie i stary linux)

EDU Enthusiast

#21
https://asteroidsathome.net/boinc/workunit.php?wuid=225285161
5900x 2280 avg (fma)
504074924 781927 3 Sep 2024, 6:14:45 UTC 3 Sep 2024, 6:53:47 UTC Completed, waiting for validation 2,280.84 2,279.03 pending Period Search Application v102.20 (win10)
windows_x86_64

https://asteroidsathome.net/boinc/workunit.php?wuid=225285536
Gold 6154 1900sec Avg (avx512) - Lowest 1720s
504074326 781928 3 Sep 2024, 6:18:06 UTC 3 Sep 2024, 9:45:26 UTC Completed and validated 1,806.26 1,800.23 54.44 Period Search Application v102.21
x86_64-pc-linux-gnu

https://asteroidsathome.net/boinc/workunit.php?wuid=225301239
Radeon 7900 XTX 445sec avg - Lowest 336s
504106498 781927 3 Sep 2024, 9:03:59 UTC 3 Sep 2024, 11:12:14 UTC Completed and validated 445.26 5.22 58.27 Period Search Application v102.20 (opencl_102_amd_win)
windows_x86_64


https://asteroidsathome.net/boinc/workunit.php?wuid=225284831
Radeon VII Pro 732sec avg - Lowest 730sec
504074594 781929 3 Sep 2024, 6:10:33 UTC 3 Sep 2024, 8:27:14 UTC Completed and validated 732.05 32.82 55.80 Period Search Application v102.18 (opencl_101_amd_linux)
x86_64-pc-linux-gnu



Jesli chodzi o kontrole ile taskow ma chodzic na raz i ile corow uzywac moze to jest tragedia w tym projektcie
Moge powiedziec ze xeon phi bedzie tutaj bezuzyteczny.
Xeon phi z tego co widze narazie tylko w primegrid potencjalny uzytek moze miec (gdzie da sie ustawic 1 task na powiedzmy 64 thready/cory.)
(Ale i to moze byc tragedia - w zaleznosci jak sie bedzie skalowal perf. moze byc slabo jako iz pamiec jest wolniejsza przy nim.)