Nasze symulacje dynamiki plazmy często generują zbyt wiele informacji. Podczas symulacji rejestrujemy różne właściwości fizyczne na siatce (x, y, z, t), która jest tak duża jak (8192x1024x1024x1500), dla co najmniej 10 właściwości. Informacje te są przetwarzane po zakończeniu symulacji. Dzięki temu my robić filmy o nieruchomościach, wykonać analizę Fouriera, obliczyć …
Wiem, że ATLAS jest w stanie zoptymalizować się pod kątem maszyny, na której jest skompilowany, dzięki czemu można uzyskać maksymalne korzyści przy kompilacji ze źródła. Czy jest jakaś korzyść ze skompilowania LAPACK-a ze źródła? O wiele łatwiej byłoby po prostu zainstalować wstępnie przygotowany pakiet.
Pytanie: Jakie metody są dostępne w celu dokładnego i wydajnego obliczenia struktury rzadkości matrycy elementów skończonych? Informacje: Pracuję nad solwerem Poissona Równania Ciśnienia, stosując metodę Galerkina z kwadratową podstawą Lagrange'a, napisaną w C, i używam PETSc do rzadkiego przechowywania macierzy i procedur KSP. Aby efektywnie korzystać z PETSc, muszę wstępnie …
W tym przykładowym programie robię to samo (przynajmniej tak mi się wydaje) na dwa różne sposoby. Korzystam z tego na komputerze z systemem Linux i monitoruję użycie pamięci za pomocą top. Korzystając z gfortran, stwierdzam, że w pierwszy sposób (między „1” a „2”) używana pamięć wynosi 8,2 GB, podczas gdy …
Oceniając liczbę FLOP w prostej funkcji, często można po prostu zejść w dół wyrażenia zestawiając podstawowe operatory arytmetyczne. Jednak w przypadku wyrażeń matematycznych obejmujących parzysty podział nie można tego zrobić i można oczekiwać, że będzie można porównać z liczbą FLOP z funkcji z tylko dodatkami i mnożeniami. Sytuacja jest jeszcze …
Próbuję dowiedzieć się, czy istnieje szybszy sposób obliczenia wszystkich wartości własnych i wektorów własnych bardzo dużej i rzadkiej macierzy przylegania niż przy użyciu scipy.sparse.linalg.eigsh O ile mi wiadomo, metody te wykorzystują tylko rzadkość i atrybuty symetrii macierzy. Macierz przylegania jest również binarna, co sprawia, że myślę, że istnieje szybszy sposób, …
Załóżmy, że mam dwie macierze Nx2, Mx2 reprezentujące odpowiednio wektory N, M 2d. Czy istnieje prosty i dobry sposób obliczenia odległości między każdą parą wektorów (n, m)? Łatwy, ale nieefektywny sposób to oczywiście: d = zeros(N, M); for i = 1:N, for j = 1:M, d(i,j) = norm(n(i,:) - m(j,:)); …
Zarówno w przypadku metod dekompozycji domen (DD), jak i metod wielosiatkowych (MG), można skomponować zastosowanie aktualizacji bloków lub zgrubnych korekt jako addytywne lub multiplikatywne . W przypadku solverów punktowych jest to różnica między iteracjami Jacobiego i Gaussa-Seidela. Multiplikatywną wygładzacz dla działającego jako S ( x o l d , b …
Rozważ dwa komputery z różnymi konfiguracjami sprzętu i oprogramowania. Podczas uruchamiania dokładnie tego samego seryjnego kodu Naviera-Stokesa na każdej platformie wykonanie x ity odpowiednio dla komputera 1 i 2 wymaga czasu xiy. W tym przypadku jest różnicą czasu iteracji między komputerem 1 a komputerem 2.Δ = x - yΔ=x−y\Delta = …
Obliczenia równoległe są często modelowane przy użyciu deterministycznej lokalnej szybkości obliczeń, obciążenia związanego z opóźnieniami i przepustowości sieci. W rzeczywistości są one zmienne przestrzennie i niedeterministyczne. Badania takie jak Skinner i Kramer (2005) obserwują rozkłady multimodalne, ale analiza wydajności wydaje się zawsze wykorzystywać albo rozkłady deterministyczne, albo gaussowskie (nie tylko …
Jest to prosty problem z wyliczaniem symetrii. Podaję tutaj pełne tło, ale nie jest wymagana znajomość chemii kwantowej. Integralną dwóch cząstek jest: ⟨ ja j | K L ⟩ = ∫ ψ * I ( x ) ψ * j ( x ' ) ψ k ( x ) ψ …
Próbuję zrozumieć różnicę między tymi dwiema kartami graficznymi dla komputerów akademickich, szczególnie dla komponentu DGEMM. Jeśli spojrzymy na surowe statystyki, oba mają ten sam układ GK110, mają porównywalne statystyki w praktycznie każdej kategorii i, moim zdaniem, mają tę samą architekturę rdzenia. Przed wszelkimi rabatami K20X jest około 4x większy niż …
C ++ 11 wprowadza semantykę przenoszenia, która może na przykład poprawić wydajność kodu w sytuacjach, w których C ++ 03 musiałby wykonać konstrukcję kopii lub przypisanie kopii. W tym artykule opisano, że następujący kod przyspiesza 5-krotnie po skompilowaniu z C + 11: vector<vector<int> > V; for(int k = 0; k …
Szukam najważniejszej literatury i slajdów do modelowania bieżących i przyszłych kosztów energii operacji zmiennoprzecinkowych i transferu danych w procesorze, pamięci, sieci i pamięci. Oznacziłem to pytanie jako wiki społeczności i wolę ograniczyć każdą odpowiedź do następującego formatu: Tytuł, autorzy, lokalizacja / konferencja / czasopismo, rok, DOI / URL, podsumowanie informacji, …
Czy mnożenie macierzy (zarówno Mat * Mat, jak i Mat * Vec) skaluje się z liczbą niezerowych lub z rozmiarem macierzy? Lub jakąś kombinację tych dwóch. Co z kształtem. Na przykład mam macierz 100 x 100 ze 100 wartościami lub macierz 1000 x 1000 ze 100 wartościami. Czy podczas kwadratowania …
Używamy plików cookie i innych technologii śledzenia w celu poprawy komfortu przeglądania naszej witryny, aby wyświetlać spersonalizowane treści i ukierunkowane reklamy, analizować ruch w naszej witrynie, i zrozumieć, skąd pochodzą nasi goście.
Kontynuując, wyrażasz zgodę na korzystanie z plików cookie i innych technologii śledzenia oraz potwierdzasz, że masz co najmniej 16 lat lub zgodę rodzica lub opiekuna.