![]() |
Rechnen mit der GPU
Hi,
ich hab im Netz schon gesucht, aber nicht wirklich was gefunden. Ich suche zur Zeit eine Möglichkeit mathematische Probleme in Delphi schneller zu lösen, und zwar mit der GPU. Nun wollte ich gern wissen, ob jemand von euch eine Möglichkeit kennt über eine Unit/DLL parallelisierbare Berechnungen auf die GPU auszulagern und zwar ohne dass man sich selber um die Parallelisierung kümmern muss. Sprich zum Bleistift: Teile jedes Item eines Arrays durch die Zahl 2. Ich hoffe jemand von euch kann mir n paar Tipps geben. Vielen Dank schonmal im Vorraus! |
AW: Rechnen mit der GPU
Mhm, hast du dir schon
![]() Da gabs auch ein Delphi-Beispiel im Emba-Forum: ![]() nVidia hat z.B. eine OpenCL-Implementierung in ihren aktuellen Treibern drin, die wrappen das dann intern auf deren CUDA. Es gibt auch ein Projekt dazu, Delphi-OpenCL: ![]() |
AW: Rechnen mit der GPU
Zitat:
(Tschuldschung, aber ich konnte grade nicht anders) |
AW: Rechnen mit der GPU
Vielleicht noch ein kleiner Hinweis für die Benutzung der GPU: Eine GPU Recheneinheit kann sehr sehr viele Threads verwalten. Aber alle Threads teilen sich den gesamten GraKa-Speicher. Wenn du also eine GraKa mit 512 MB Speicher hast und 1024 Threads dann hat jeder Thread nur 512 KB an Speicher benutzen. Da in der Praxis die Threadanzahlen weit höher liegen, wird der Speicher pro Thread immer kleiner. Selbst die MD5 von sehr vielen Strings zu berechnen läuft auf einer CPU schneller, da der Berechnungsthread immer auf die Ergebnisse der vorherigen Operation warten muss.
Grundsätzlich ist für die GPU nur geeignet, was viel Rechenleistung braucht, aber nicht viel Speicher dazu. Und da die GPU sehr viele Threads unterstützt sollte der Code auch besonders gut multithreadfähig sein. Bernhard |
AW: Rechnen mit der GPU
Zitat:
Also generell kann man das nicht kompilieren,. da hier eine Datei fwehlt, da eine DPR kaputt ist usw. Gibt es kein e sehr sehr einfache Demo? Eine Demo, auf das Minimum reduziert? ohne unnötige Uses-Einträge. Sprich: "Rechnen mit der GPU"? Einfach das, was vorher die CPU machte nun auf die GPU bringen. |
AW: Rechnen mit der GPU
Die Direct3D10.pas dürfte nur ein DirectX-Header sein (wobei ich nicht verstehe, warum gerade OpenCL DirectX brauchen sollte..)
Schau mal auf dein System, ob du evtl. eine D3DX10.pas hast, die dürfte evtl. passen (ausprobieren). Zitat:
|
AW: Rechnen mit der GPU
Delphi-Quellcode:
Die existiert nicht. Hatte ich vorher schon gecheckt.
Schau mal auf dein System, ob du evtl. eine D3DX10.pas hast, die dürfte evtl. passen (ausprobieren).
1:1 möchte ich den Code nicht portieren. Dass ich den anpassen und erweitern muss, ist mir klar. Aber mit der Demo vom Emba-Forum komme ich nicht klar. Es hagelt gerade zu nur Exceptions (ich habe eine ATI). |
AW: Rechnen mit der GPU
Schau dir doch das hier mal an.
![]() |
AW: Rechnen mit der GPU
|
AW: Rechnen mit der GPU
moin,
wollt mal hören ob sich in der Richtung hier was getan hat in den letzten 2 Jahren. Wäre über das berechnen über die GPU auch interessiert, vorallem ob man damit gut Dateien ver/entschlüsseln kann. Mit gut meine ich natürlich zuverlässlich und schnell. Die GPU kommt auf wesentlich mehr Gigaflops als eine CPU. Dafür ist der Speicher eine Graka eher begrenzt. Wär toll wenn hier einer damit schon Erfahrungen sammeln konnte. LG Sougetsu |
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:52 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz