Jedes Mal, wenn ich meinen Code in GCC kompiliere, dauert es ungefähr eine Minute. Was ist der beste Weg, um dies zu beschleunigen? Soll ich einfach einen neueren, schnelleren Computer kaufen?
Wenn Sie die Engpässe auf Ihrem Computer beschleunigen (vermutlich CPU und Arbeitsspeicher für einen Compiler, sofern nicht alles auf der Festplatte zwischengespeichert wird), verkürzen Sie die Kompilierungszeit, ja.
Shinrai
1
Können Sie weitere Informationen darüber bereitstellen, wie Sie es aufrufen? Welche Möglichkeiten?
Keith
Derzeit arbeite ich an einem Plugin für die "R" -Sprache, mit der C aufgerufen wird. Der C-Code wird kompiliert, wenn ich im "R" -Interpreter "install.packages" ("package.tar.gz", repos = NULL) eingebe. '
Nick
Antworten:
2
Die beste Möglichkeit, die Neukompilierung eines sich entwickelnden Codes zu beschleunigen, besteht darin, die Compilerausgaben mit ccache zwischenzuspeichern . Es funktioniert am besten, wenn nur kleine Teile des Codes geändert werden.
Wenn Sie Zugriff auf viele Computer haben, können Sie mit distcc Ihre Kompilierungsaufträge über ein Netzwerk verteilen (so kann ich ohne Angst sagen: "Tu mir was make -j100!". Abhängig von der Anzahl der verfügbaren Computer kann dies zu einer beträchtlichen Steigerung führen Geschwindigkeitsschub.
Irgendeine Idee, wie man ccache für die Installation eines R p benutzt
Nick
install.packagesRuft einfach den Compiler auf und ccache ahmt den Compiler für alle praktischen Zwecke nach, sodass Sie für Ihren R-Anwendungsfall nichts Besonderes tun müssen.
Antworten:
Die beste Möglichkeit, die Neukompilierung eines sich entwickelnden Codes zu beschleunigen, besteht darin, die Compilerausgaben mit ccache zwischenzuspeichern . Es funktioniert am besten, wenn nur kleine Teile des Codes geändert werden.
Wenn Sie Zugriff auf viele Computer haben, können Sie mit distcc Ihre Kompilierungsaufträge über ein Netzwerk verteilen (so kann ich ohne Angst sagen: "Tu mir was
make -j100
!". Abhängig von der Anzahl der verfügbaren Computer kann dies zu einer beträchtlichen Steigerung führen Geschwindigkeitsschub.quelle
install.packages
Ruft einfach den Compiler auf und ccache ahmt den Compiler für alle praktischen Zwecke nach, sodass Sie für Ihren R-Anwendungsfall nichts Besonderes tun müssen.