Heim > Backend-Entwicklung > C++ > Hauptteil

Wie kann ich C 17-Parallelalgorithmen für Leistungssteigerungen nutzen?

Patricia Arquette
Freigeben: 2024-10-27 06:03:29
Original
644 Leute haben es durchsucht

 How Can I Leverage C  17 Parallel Algorithms for Performance Gains?

Sind C 17-Parallelalgorithmen bereits implementiert?

In C 17 wurden parallele Algorithmen eingeführt, standen jedoch vor Herausforderungen bei der Implementierung. Ab heute sind diese Algorithmen in GCC 9 realisiert. Um sie verwenden zu können, müssen Sie jedoch Thread Building Blocks (TBB) unabhängig installieren.

Implementierungsdetails

Ubuntu 19.10:

  • GCC 9 und TBB 2019 sind sofort verfügbar.
  • Installation: sudo apt install gcc libtbb-dev

Ubuntu 18.04:

  • GCC 9 kann über ein PPA erworben werden.
  • TBB muss manuell kompiliert werden, da die vorhandene Version inkompatibel ist.
  • Automatische Installationsschritte finden Sie in den bereitgestellten Befehlen in der Antwort.

Verwendung:

<code class="cpp">#include <execution>
#include <algorithm>

std::sort(std::execution::par_unseq, input.begin(), input.end());</code>
Nach dem Login kopieren

Leistung

Benchmarks mit einem Sortierprogramm zeigen erhebliche Geschwindigkeitssteigerungen mit parallelen Algorithmen und erreichten in einem Beispiel eine 4,5-fache Verbesserung. Die Leistung kann je nach Systemspezifikationen variieren.

Behebung häufiger Fehler

  • Fehlendes TBB: tbb/blocked_range.h nicht gefunden.
  • Veraltetes TBB:Erfordert TBB-Version 2018 oder höher.

Das obige ist der detaillierte Inhalt vonWie kann ich C 17-Parallelalgorithmen für Leistungssteigerungen nutzen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!