2009-12-26 16 views
5

Ich bin Neuling in GPU-Programmierung, und ich arbeite auf Brute Force RAR Password Recovery auf ATI Stream Processor mit Brook + Sprache, aber ich sehe, dass der Kernel in Brook + Sprache geschrieben nicht erlauben jeden Aufruf von normalen Funktionen (außer Kernel-Funktionen), ist meine Fragen:RAR Passwort Recovery auf GPU mit ATI Stream Prozessor

1) wie unrar.dll (zum Archivieren von Dateien) API in dieser Situation zu verwenden? und ist dies die einzige Möglichkeit, die RAR-Passwortwiederherstellung zu programmieren?

2) Was ist mit crack und ElcomSoft Software, die GPU verwenden, wie sie arbeiten?

3) Was genau die Rolle für die Funktion in GPU (ATI Stream Prozessor oder CUDA) in diesem Programm arbeiten?

4) ist nVidia/CUDA Technologie einfacher/flexibler als ATI/bach + Sprache?

Antwort

2

1) unrar.dll ist eine kompilierte dynamische Link-Bibliothek. Diese werden auf der CPU ausgeführt. GPUs haben einen sehr unterschiedlichen Maschinencode und ein sehr unterschiedliches Ausführungsmodell, so dass sie keine dlls ausführen können.

Sie könnten versuchen, einen Callback von der GPU zur CPU über Ereignisse zu implementieren oder einen x86-Interpreter auf der GPU zu bauen, aber diese würden mit ziemlicher Sicherheit langsamer laufen als nur auf der CPU.

Die Verwendung von unrar.dll ist nicht die einzige Möglichkeit, die RAR-Kennwortwiederherstellung zu programmieren. Sie könnten stattdessen einfach Ihren eigenen Code für CPU und GPU von Grund auf neu erstellen.

2) Sie arbeiten, indem der CPU-Code explizit fordert, dass ein GPU-Code auf der GPU ausgeführt wird.

3) Ich weiß es nicht genau. Ich würde allerdings vermuten, dass es ein GPU-Programm hat, das viele verschiedene Kombinationen ausprobiert und davon profitiert, dass diese parallel laufen.

4) CUDA ist reifer als Brook +. Brook + kann für einfache Aufgaben genauso einfach sein, ist aber nicht so umfassend. Für neue Projekte würden die meisten Leute jetzt OpenCL über Brook + wählen.

(Ich bin mir nicht sicher, was Sie vorhaben zu tun, aber keine der oben genannten scheint wahrscheinlich etwas Unheimliches zu ermöglichen.)