Mit CuObjDump kann SASS aus Cubin-Datei mit cuobjdump -sass <input file>
generiert werden, aber gibt es eine Möglichkeit, das SASS wieder in Cubin umzuwandeln.CUDA SASS nach Cubin
Antwort
Es gibt keine "Assembler" als Teil der offiziellen NVIDIA CUDA Toolchain. Die NVIDIA-Toolchain kann CUDA C/C++ oder PTX verwenden und in ein Cubin- oder anderes ausführbares Format konvertieren.
Es gibt jedoch einige Community entwickelten Montierer:
Vielleicht ist die jüngste in dieser Zeit (wahrscheinlich der einzige Wert zu diesem Zeitpunkt unter Berücksichtigung) ist maxas.
Es gab auch eine ältere asfermi in der Fermi-Generation von CUDA-GPUs entwickelt. Ich glaube nicht, dass es aktualisiert oder gepflegt wurde.
Ich möchte hinzufügen, dass je nach der Architektur (maxwell/kepler etc), können Sie eine Gemeinschaft entwickelten Assembler/Dissembler verwenden, um die SASS zurück zu Cubin konvertieren. Hier sind einige:
Maxas: https://github.com/NervanaSystems/maxas
KeplerAs: https://github.com/PAA-NCIC/PPoPP2017_artifact/tree/master/KeplerAs
Die ein Wort Antwort ist, glaube ich, nicht. – talonmies
Wenn Sie fragen, ob es ein Werkzeug gibt, das in SASS geschriebenen Code in etwas verwandelt, was ausführbar ist, wäre das im Grunde ein SASS-Assembler, und NVIDIA bietet keine solchen Tools (die niedrigste von NVIDIA unterstützte Toolchain ist PTX). aber vielleicht möchten Sie sich [den Maxas-Assembler] (https://github.com/NervanaSystems/maxas) ansehen. –