matrix-multiplication

Dlaczego MATLAB jest tak szybki w mnożeniu macierzy?

Robię kilka benchmarków z CUDA, C++, C# i Java, a także używam MATLAB do weryfikacji i generowania macierzy. Ale kiedy mnożę ... gorytm jest taki sam jak C++ i Java, ale jest gigantyczny skok 2048 z 1024? Edit2: Zaktualizowane wyniki MATLAB i 4096x4096

Mnożenie macierzy: mała różnica w wielkości macierzy, duża różnica w czasie

Mam kod mnożenia macierzy, który wygląda tak: for(i = 0; i < dimension; i++) for(j = 0; j < dimension; j++) ... estamp(); printf("\nsecs:%f\n", end-start); free(A); free(B); free(C); return 0; }

Dlaczego jest ogromny hit wydajności w 2048x2048 vs 2047x2047 mnożenie tablicy?

Robię jakiś benchmarking mnożenia macierzy, jak wcześniej wspomniano w Dlaczego MATLAB jest tak szybki w mnożeniu macierzy? ... = 0; m < rozmer; m++) { temp = temp + matice1[j,m] * matice2[m,k]; } matice3[j, k] = temp; } }

Do czego służy symbol '@ = ' w Pythonie?

Wiem, że @ jest dla dekoratorów, ale co to jest @= w Pythonie? Czy to tylko rezerwacja na jakiś przyszły pomysł? To tylko jedno z wielu moich pytań podczas czytania tokenizer.py.

CUDA określające wątki na blok, bloki na siatkę

Jestem nowy w paradygmacie CUDA. Moje pytanie dotyczy określenia liczby wątków na blok i bloków na siatkę. Czy gra w to troch ... nt C (jak w C = A * B) będzie obliczany przez pojedynczy wątek. Jak określiłbyś wątki / blok, bloki / siatka w tym przypadku?

Różnica między numpy dot () a Pythonem 3.5+ mnożenie macierzy @

Niedawno przeniosłem się do Pythona 3.5 i zauważyłem, że nowy operator mnożenia macierzy (@)czasami zachowuje się inaczej ni ... zwraca: d.shape (8, 13, 8, 13) Jak mogę odtworzyć ten sam wynik za pomocą numpy dot? Czy są jakieś inne znaczące różnice?

Dlaczego mnożenie macierzy jest szybsze z numpy niż z ctypes w Pythonie?

Próbowałem znaleźć najszybszy sposób na mnożenie macierzy i próbowałem na 3 różne sposoby: pure Python implementation: bez ... ersja numpy jest szybsza niż wersja ctypes, nie mówię nawet o czystej implementacji Pythona, ponieważ jest to dość oczywiste.

Szybszy sposób inicjalizacji tablic poprzez mnożenie pustych macierzy? (Matlab)

Natknąłem się na dziwny (moim zdaniem) sposób, w jaki Matlab radzi sobie z pustymi macierzami . Na przykład, jeśli mnożymy dw ... end toc % Elapsed time is 0.297953 seconds. Jednak użycie z(n,n)=0; zamiast tego daje podobne wyniki do przypadku zeros(n).

Efektywne mnożenie macierzy 4x4 (C vs assembly)

Szukam szybszego i trudniejszego sposobu mnożenia dwóch macierzy 4x4 w C. moje obecne badania koncentrują się na montażu x86- ... ji, których nie jestem świadomy? Czy znasz jakieś narzędzia do montażu x86 - 64 lub triki, które pomogą mi w walce z maszyną?

Pomnóż matrycę 3D z matrycą 2D

Załóżmy, że mam axbxc macierz X i BXD macierz Y. Czy istnieje metoda bez pętli, dzięki której mogę mnożyć każdy z C Macierze AxB z Y?

Wielowątkowe mnożenie macierzy całkowitych w NumPy/SciPy

Robienie czegoś takiego import numpy as np a = np.random.rand(10**4, 10**4) b = np.dot(a, a) Używa wielu rdzeni i działa ... istnieje? Disclaimer: faktycznie używam NumPy + MKL, ale próbowałem podobnego testu na Vanilly NumPy, z podobnymi wynikami.

Jak przyspieszyć mnożenie macierzy w C++?

Wykonuję mnożenie macierzy za pomocą tego prostego algorytmu. Aby być bardziej elastycznym użyłem obiektów do macierzy, które ... w. Porównanie algorytmu standardowego (std), zamiany kolejności pętli j I k (swap) i blokowany o rozmiarze bloku 13 (block).

Jak uzyskać szybszy Kod niż numpy.kropka do mnożenia macierzy?

Tutaj mnożenie macierzy za pomocą hdf5 używam hdf5 (pytables) do mnożenia dużych macierzy, ale byłem zaskoczony, ponieważ uż ... np.dot(A[i:i+sz,k:k+sz],B[k:k+sz,j:j+sz]) print (time.time()-t0) h5f_A.close() h5f_B.close() h5f_C.close()