2016-02-28 63 views

回答

4

的應用程序二進制接口描述函數的調用方式如何連接到庫等等。例如,它允許有一堆函數調用,例如可以從內核,鏈接庫調用內核。所有這些功能都需要一些寄存器(用於堆棧幀)。 ABI是使現代軟件工作的原因,程序員通常不能退出。

您仍然可以關閉abi(並保存一些註冊表),但請記住,將外部函數鏈接爲printf()將不再有效。

Here是鏈接到官方CUDA文檔ABI和ptxas。它會回答你所有的問題。

+0

這似乎是在討論PTX代碼的差異,而不是它如何編譯。 – einpoklum

+1

在寄存器中增加了關於abi及其成本的一些細節。希望這有助於。有關cuda工具鏈中abi的實際實施的資源很少。 –

+0

因此基本上+2個寄存器(每個函數?)來維護堆棧幀? – einpoklum