Strona główna Przykłady Zrzuty ekranu Instrukcja obsługi Logo Bluesky. YouTube ☰
OghmaNano Platforma do symulacji wielofizycznych procesów zachodzących w optoelektronicznych urządzeniach i systemach fotonicznych. POBIERZ Przewodnik szybkiego uruchomienia

Edytor sprzętu

OghmaNano hardware ribbon showing the Hardware editor button
Otwieranie edytora ustawień sprzętowych.

Wszystkie programy komputerowe, w tym OghmaNano, działają na fizycznym sprzęcie obliczeniowym. Istnieje wiele różnych konfiguracji sprzętowych, które mogą być używane w dowolnym komputerze – niektóre komputery mają dużą liczbę rdzeni procesora, podczas gdy inne tylko jeden. Podobnie, komputery różnią się ilością pamięci, przestrzenią dyskową i kartami graficznymi. Aby pomóc użytkownikowi w uzyskaniu jak najlepszych rezultatów z OghmaNano, dostępny jest edytor sprzętu, w którym użytkownik może skonfigurować sposób działania OghmaNano na danym komputerze. Można do niego uzyskać dostęp za pomocą okna karty symulacji (??).

Jeśli klikniesz na to, otworzy się okno edytora sprzętu (??).

Okno ustawień sprzętowych składa się z różnych zakładek, które umożliwiają użytkownikowi edycję konfiguracji, a także przeprowadzenie testów wydajności urządzenia.

Zakładka konfiguracji procesora/karty graficznej

OghmaNano hardware editor window
Okno edytora sprzętu.

Ta zakładka służy do konfigurowania sposobu, w jaki OghmaNano współpracuje z procesorem graficznym (GPU) i procesorem centralnym (CPU), co opisano w poniższej tabeli. Jak szczegółowo opisano w innych częściach tej instrukcji, OghmaNano składa się z dwóch części: oghma_core.exe, który stanowi silnik obliczeniowy, oraz oghma_gui.exe, który jest graficznym interfejsem użytkownika. Można tutaj precyzyjnie dostosować sposób działania obu tych części modelu.

Pamięć podręczna Newtona

OghmaNano Newton cache editor window
Edytor pamięci podręcznej Newton.

Podczas przeprowadzania symulacji z dużą liczbą równań różniczkowych zwyczajnych (ODE), na przykład w przypadku urządzeń jednowymiarowych z dużą liczbą stanów pułapkowych i dużą liczbą punktów przestrzennych, lub podczas przeprowadzania symulacji dwuwymiarowych OFET, obliczenie każdego kroku zmiany napięcia może trwać dość długo. Dzieje się tak, ponieważ solver musi rozwiązywać każdy krok zmiany napięcia za pomocą metody Newtona, aż do uzyskania zbieżności. Dla każdego kroku solvera należy utworzyć macierz Jacobiego, odwrócić ją, pomnożyć przez reszty i obliczyć aktualizacje wszystkich zmiennych solvera. Może to zająć sporo czasu na każdy krok (2000 ms). Jednym ze sposobów na obejście tego problemu jest zapisywanie wcześniej obliczonych wyników na dysku, a następnie, gdy użytkownik poprosi solver o obliczenie już obliczonego problemu, wynik można pobrać zamiast go ponownie obliczać. Jest to bardzo przydatne w projektowaniu OLED, gdzie próbuje się zoptymalizować strukturę optyczną urządzenia, pozostawiając niezmienioną strukturę elektryczną. Można uruchamiać nowe symulacje optyczne z wykorzystaniem już wcześniej obliczonych rozwiązań elektrycznych. Opcje konfiguracyjne są wyświetlane w poniższej tabeli.

Korzystanie z pamięci podręcznej Newton wiąże się z pewnymi kosztami, dlatego polecam ją stosować tylko wtedy, gdy rozwiązywanie problemu elektrycznego jest bardzo powolne. Technicznie rzecz biorąc, pamięć podręczna Newton działa poprzez obliczanie sumy MD5 poziomów Fermiego i potencjałów, a następnie generuje z niej skrót problemu elektrycznego. Następnie porównuje się go z danymi zapisanymi na dysku. Jeśli zostanie znalezione wcześniej obliczone rozwiązanie, poziomy Fermiego/potencjały są aktualizowane do wartości znalezionych na dysku. Pamięć podręczna jest przechowywana w pamięci podręcznej oghma_local, a każde wcześniej obliczone rozwiązanie jest zapisywane jako nowy plik binarny. Każde uruchomienie symulacji generuje plik indeksu, w którym przechowywane są wszystkie sumy MD5 z danej symulacji. Gdy pamięć podręczna zapełni się, OghmaNano usuwa wyniki symulacji partiami, na podstawie plików indeksu.

Test wydajności sprzętu.

OghmaNano hardware benchmark results window
Uruchamianie testu wydajności sprzętu.

W lewym górnym rogu okna sprzętowego (??) znajduje się przycisk o nazwie „Test wydajności sprzętu”. Po kliknięciu tego przycisku program OghmaNano przeprowadzi test wydajności sprzętu, a wyniki tego testu można zobaczyć w oknie (??). Test ten sprawdza, jak dobrze procesor radzi sobie z obliczaniem funkcji sinus i eksponencjalnej oraz z alokacją i dealokacją pamięci w blokach. Wyświetla, ile czasu zajęło wykonanie kilku tysięcy operacji, a także wartość R (zwana również wartością Rodericka). Wartość R jest definiowana jako: czas potrzebny na wykonanie obliczeń na Twoim komputerze podzielony przez czas potrzebny na wykonanie obliczeń na moim komputerze. Zatem mniejsze wartości oznaczają, że Twój komputer jest szybszy od mojego. Mój komputer to Intel(R) Core(TM) i7-4900MQ CPU @ 2.80GHz, umieszczony w laptopie Lenovo ThinkPad z 2017 roku. Większość nowoczesnych komputerów powinna być szybsza. Jeśli masz dobry procesor, ale Twoje symulacje działają wolniej niż moje filmy na YouTube, to najprawdopodobniej wynika to ze słabej prędkości odczytu/zapisu, spowodowanej programami antywirusowymi, przechowywaniem symulacji w OneDrive, korzystaniem z dysków sieciowych lub wolnych nośników USB itp.