Распараллелено с помощью GNU Parallel:
parallel -j30 -a sourcefile.txt --pipepart --block -1 'mkdir -p prog{#};cat >prog{#}/myfile.txt'
Это запустит 30 заданий параллельно, разделив sourcefile.txt
на одну часть для каждого задания (, то есть 30 ), и передав части cat
, которые будут сохранены в prog{jobnumber}/myfile.txt
.
Параллельный запуск GNU Parallel требует файловых дескрипторов. Это означает, что если вы не измените количество доступных файловых дескрипторов, вы сможете выполнять не более 250 заданий параллельно.
Но вы можете легко разделить на большее количество блоков :Они просто не будут разделены все параллельно:
parallel -j30 -a sourcefile.txt --pipepart --block 1M 'mkdir -p prog{#};cat >prog{#}/myfile.txt'
Здесь мы разделились на блоки размером около 1 МБ с 30 параллельными заданиями.
Я столкнулся с той же проблемой. Я не уверен, что это все еще актуально для вас, но если да, то эти шаги сработали для меня.
dtoverlay=vc4-fkms-v3d
После загрузки пи:
также после этого убедитесь, что
/dev/dri/card0
присутствует