I forbindelse med overvejelser indefor fysik-simulering tænker jeg på mulighederne for udvikling af et indstikskort til en alm. pc, som kan hardwareaccelerere nogen af de tungere beregninger. Jeg er imidlertid slet ikke nogen ørn udi fpga-programmering i vhdl eller ligende, så jeg er ikke helt klar over hvad mulighederne er.
Kan man realistisk set opnå markante hastighedsforbedringer ved at hardcode visse algoritmer i en fpga fremfor at køre det i software på en moderne 2+ GHz maskine ovenpå et operativsystem som windows?
Hvor komplekse algoritmer kan man i praksis smide på chip? Et hurtigt eksempel kan være en rk4 integration mellem 1000 indbyrdes forbundne punkter i 3d. Lad os sige at hvert punkt i gennemsnit er forbundet til 10 andre med simple fjedre. For hver iteration skal man fire gange beregne afstanden i rummet mellem indbyrdes forbundne punkter, beregne fjedrekraften, ændring i position, hastighed ect. Er det en opgave som er langt ud over hvad man kan klare med en almindelig fpga?
Tanken er at definere nogle få lavniveaufunktioner som løser nogle af de tungeste opgaver indenfor simuleringen og hardcode disse, men som sagt er jeg slet ikke klar over hvad man kan forvente sig af hastighed og "kode"-plads. Selve de enheder der skal bearbejdes er naturligvis i ram ekstern fra chippen selv.