Den Flaschenhals in einer langsamen Pipe optimieren durch Parallelisierung

Harald König

Playlists: 'froscon2019' videos starting here / audio / related events

Neues aus meiner Shell-Küche: in einem Skript zum Disassemblieren eines einfachen seriellen Protokolls mit Hilfe von “sed” werden die Input-Daten immer größer und sed braucht immer länger – inzwischen bei letzten Messdaten über 20 Minuten! Das muss doch auch schneller gehen?!

Heute haben (fast) alle Rechner mehrere CPU-Cores und (Hyper)Threads. Warum also läuft das zu langsame sed nicht parallel auf allen verfügbaren CPUs und vervielfacht so den Durchsatz des Tools ?

Klingt einfach, ist aber zunächt gar nicht sooo trivial alleine mit Shell-Mitteln. Die Probleme werden gezeigt, und wie man mit ein bissl Aufwand das alles in den Griff bekommen kann.

Und dann gibt es noch ein tolles Kommandozeilen-Tool, welches genau diese Parallelisierung eines Programms wie sed in einer Pipe mit allen seinen Problemen perfekt löst, ganz ohne die grauen Haare der “nur-in-Shell-Lösung”.

Download

Related

Embed

Share:

Tags