Computational Science

Pytania i odpowiedzi dla naukowców używających komputerów do rozwiązywania problemów naukowych

84
Jakie problemy nadają się dobrze do obliczeń na GPU?

Mam więc przyzwoitą uwagę, z jakimi problemami, z którymi pracuję, najlepiej rozwiązać szeregowo, i którymi można zarządzać równolegle. Ale w tej chwili nie mam pojęcia, co najlepiej poradzić sobie z obliczeniami opartymi na procesorze i co powinno zostać odciążone na GPU. Wiem, że jest to...

77
Czy istnieje wysokiej jakości nieliniowy solver programowania dla Pythona?

Mam kilka trudnych, niewypukłych problemów globalnej optymalizacji do rozwiązania. Obecnie używam MATLAB's Optimization Toolbox (konkretnie fmincon()z algorytmem = 'sqp'), co jest dość skuteczne . Jednak większość mojego kodu znajduje się w języku Python i chciałbym również przeprowadzić...

74
O ile lepsze są naprawdę kompilatory Fortran?

To pytanie jest rozszerzeniem dwóch dyskusji, które pojawiły się ostatnio w odpowiedziach na „ C ++ vs Fortran for HPC ”. I jest to trochę więcej wyzwanie niż pytanie ... Jednym z najczęściej słyszanych argumentów na korzyść Fortrana jest to, że kompilatory są po prostu lepsze. Ponieważ większość...

66
Jakie są dobre strategie poprawy wydajności szeregowej mojego kodu?

Pracuję w nauce obliczeniowej, w wyniku czego spędzam nietrywialną ilość czasu próbując zwiększyć naukową przepustowość wielu kodów, a także zrozumieć ich efektywność. Załóżmy, że oceniłem wydajność w porównaniu do czytelności / możliwości ponownego użycia / konserwacji kompromisu oprogramowania,...

56
C ++ vs Fortran dla HPC

W moim programie doktoranckim z zakresu obliczeń pracujemy prawie wyłącznie w C ++ i Fortran. Wygląda na to, że niektórzy profesorowie wolą jeden od drugiego. Zastanawiam się, który z nich jest „lepszy” lub czy w pewnych okolicznościach jest lepszy od

55
Jak pobrać FFT nierówno rozmieszczonych danych?

Fast Fourier Transform algorytm oblicza rozkładu Fouriera przy założeniu, że punkty wejściowe są równo rozłożone w dziedzinie czasu . Co jeśli nie są? Czy istnieje inny algorytm, którego mógłbym użyć, lub w jakiś sposób zmodyfikować FFT, aby uwzględnić efektywną zmienną częstotliwość...

42
Programowanie funkcjonalne i informatyka naukowa

Przepraszam, jeśli jest to niejasne pytanie, ale oto: W ciągu ostatnich kilku lat programowanie funkcjonalne cieszyło się dużym zainteresowaniem społeczności inżynierów oprogramowania. Wielu zaczęło używać języków takich jak Scala i Haskell i odniosło sukces w porównaniu z innymi językami...

41
Co sprawia, że ​​Fortran jest szybki?

Fortran zajmuje szczególne miejsce w programowaniu numerycznym. Z pewnością możesz tworzyć dobre i szybkie oprogramowanie w innych językach, ale Fortran nadal działa bardzo dobrze pomimo swojego wieku. Co więcej, łatwiej jest tworzyć szybkie programy w Fortran. Robiłem szybkie programy w C ++, ale...

40
Standardy naukowe dla błędów numerycznych

W mojej dziedzinie badań specyfikacja błędów eksperymentalnych jest powszechnie akceptowana, a publikacje, które ich nie dostarczają, są bardzo krytykowane. Jednocześnie często stwierdzam, że wyniki obliczeń numerycznych są podawane bez uwzględnienia błędów numerycznych, mimo że (a może dlatego,...