Możliwość modyfikacji kodu Fostera do odwracania macierzy

0

W wątku
Odwracanie macierzy
Foster napisał że gdyby napisać dobry algorytm permutowania macierzy to można by zaoszczędzić pamięć
Ciekawe jak mógłby wyglądać taki kod permutowania macierzy
Gdyby komuś nie pasowało że przykładowy kod odwracania macierzy jest w Pascalu to mam też kod w C

1

Można oszczędzać pamięć kosztem obciążenia CPU już na poziomie reprezentacji macierzy. Można też macierze rzadkie reprezentować w bardzo minimalistyczny sposób, przynajmniej do pewnych rozmiarów. Można się bawić w różne kompresje jeśli ma się do czynienia z pewnymi typami macierzy o odpowiednio dużych roziarach by jej stosowanie miało sens.

Jeszcze dochodzi kwestia czy gra jest warta świeczki - czy np. macierz jest na tyle gigantyczna że jest sens oszczędzać pamieć, ile tych macierzy jest do zmieszczenia w RAM, ile jest tego RAM, ile poziomów Cache ma i czy w ogóle ma cache procesor który to liczy, czy liczysz to na wielordzeniowym CPU jakiegoś serwera czy na jakimś mikrokontrolerze z opiekacza do ziemniaków, czy CPU obsługuje wektoryzację, czy może jest to nawet tablica systolityczna.

No i oczywiście kwestia kolejności wykonywania permutacji i tego dla jak szerokich czy jak wąskich grup przypadków można stosować dane metody.

Te trzy ogólnie zarysowane grupy pytań wzajemnie się przenikają.

1 użytkowników online, w tym zalogowanych: 0, gości: 1