parallelism

如何验证pigz(并行gzip)存档内容的大小?
parallelism

如何验证pigz(并行gzip)存档内容的大小?

我创建了一些pigz(并行gzip)-主页- 我的 SSD 磁盘驱动器的压缩档案。 (编译版本2.8) 我给其中一位打电话4TB-SATA 磁盘--Windows10--2024-Jan-21.img.gz它表示驱动器的大小和安装在其上的操作系统。或者,TiB 中的尺寸当然更小,可以通过fdisk类似的工具轻松显示 ( Disk /dev/sda: 3.64 TiB)。 我从过去就知道,列出压缩文件无法显示内容的实际大小。即使在 GNOME 的存档管理器中,它也会显示 2.2GB 或类似的废话。这可能与gzip...

Admin

与 CPU 计算相关的奇怪 lscpu 输出
parallelism

与 CPU 计算相关的奇怪 lscpu 输出

我一直在尝试理解lscpu的输出,并遇到了几个专门用于 CPU、物理核心和线程概念的线程。根据这些线程,要获取 CPU(逻辑单元)的总数,您可以执行以下操作:Thread(s) per corex Core(s) per socketx Socket(s)。 鉴于我的机器的部分输出如下所示,我预计CPU(s)为 28,但它被列为 20。 Architecture: x86_64 CPU op-mode(s): 32-bit, 64-bit Address sizes: 46 bits physica...

Admin

启动另一个操作系统与另一个系统并行运行
parallelism

启动另一个操作系统与另一个系统并行运行

因此,在工作中,我们有一些系统在自己的硬件上运行,这些硬件与所有系统都相同。如果其中一个硬件发生故障,正在运行的系统之一将接管并启动发生故障的系统,完成两者的工作。所有基于 Linux 和 Intel cpu。 如何让一个操作系统启动另一个操作系统一起运行?它不仅仅是运行一个程序,它还运行整个程序。 我听说过一些事情,比如如何让 Windows 让另一个操作系统使用 cpu 上的一个核心进行并行计算。但我很好奇一个系统如何立即接管另一个系统。这太酷了,不幸的是我的同事也不明白它是如何完成的。 ...

Admin

编写 Bash 代码的并行版本时出现问题
parallelism

编写 Bash 代码的并行版本时出现问题

我正在尝试并行化我的示例 Bash 脚本,并尝试了诸如&和 之类的命令wait。请告诉我什么是使其并行的有效方法 我当前的代码对于 reg2 变量中的有限条目运行良好。但我在 reg2 变量中有数百万个条目。所以我想让最外层的循环平行。并行化代码后获得相同的输出,即 0,1,2,:,3,4,:,5,6 #!/bin/bash # array1=$1 # array2=($2) # reg2=($3) array1=('bam1' 'bam2' 'bam3' 'bam4' 'bam5' 'bam6' 'bam7') array2=('cell1' ...

Admin

如何运行 `$(nproc)`× `openssl dhparam` 的并行实例,并且当第一个实例以 `0` 退出时,杀死其他实例?
parallelism

如何运行 `$(nproc)`× `openssl dhparam` 的并行实例,并且当第一个实例以 `0` 退出时,杀死其他实例?

我正在运行openssl dhparam -out dhparam4096.pem 4096,它在任务持续时间内将单个核心固定在 100%(这在某些处理器上可能相当大)。我有 1 个或多个基本上处于空闲状态的附加核心,我想使用它们。 我想运行$(nproc)该命令的 × 个实例。不同的是,我不需要完成所有实例 - 只需要第一个退出的实例......一旦“获胜者”实例完成,0其余进程就应该是“d”或类似的,它不需要很优雅。SIGTERM 我正在学习parallel并xargs实现这一目标,有许多指导文章可以完成全部并行任务,但我无法在搜索引擎上实现上述目标。我...

Admin

两个脚本写入同一个文件时未出现竞争条件
parallelism

两个脚本写入同一个文件时未出现竞争条件

我有两个并行运行的脚本,它们回显到同一个文件。一个脚本正在回显+++++++++++++++该文件,而另一个脚本正在回显===========该文件。 下面是第一个脚本 #!/bin/bash while [ 1==1 ]; do echo "+++++++++++++++" >> log.txt # commands done 下面是第二个脚本 #!/bin/bash while [ 1==1 ]; do echo "===========" >> log.txt # commands done ...

Admin

使用 shell 并行优化
parallelism

使用 shell 并行优化

我想optipng使用 shell 与我的 8 线程 CPU 并行运行。 我知道程序本身没有进行多核优化,唯一的方法是用它运行 8 个文件。 我的主目录中只有 500 多个 PNG 图像,我想尽快完成这项工作。 我可能会问一个已经得到解答但没有找到的问题。 如果重要的话,我为此程序定义了一个别名: alias optipng='optipng -o7 -zm1-9 -strip all -fix -preserve' 我希望这一点得到应用。请指教。越简单越好。如果是 POSIX,那么最好。 我承认我从未使用过xargsor parallel,并且我认为可以...

Admin

如何通过 http 并行获取大文件?
parallelism

如何通过 http 并行获取大文件?

问题: 由于 HTTP 支持在偏移处恢复,是否有任何工具(或 wget 或 curl 等命令的现有选项)可以启动多个线程来与不同文件偏移处的多个请求并行获取文件?这有助于单独限制每个套接字的性能。 我可以编写一个程序来执行此操作,但我想知道该工具是否已经存在。 背景: 最近想下载一个大的iso,但!...在服务器和我的互联网提供商之间的某个地方,传输速率被限制为 100 kb!然而,我注意到前 5 到 10 秒的吞吐量很高,达到数百兆位。所以我写了一个小的 bash 脚本来在几秒钟后重新启动: while ! timeout 8 wget -c http:/...

Admin

运行许多 python 进程时终端会自行关闭
parallelism

运行许多 python 进程时终端会自行关闭

我试图同时运行多个机器学习实验以节省时间。我的操作系统是Fedora 36,我使用emacs。为了自动化我使用的实验runs.py import subprocess subprocess.run("python train.py python train.py python train.py python train.py", shell=True) 其中train.py训练神经网络,我只是使用不同的种子。 然后,我在 emacs 中打开多个 shell,每个 shell 中运行python runs.py.我最多可以执行 5 个 shell,当我打开...

Admin

在 Bash 中并行填充变量
parallelism

在 Bash 中并行填充变量

find我正在尝试利用并行化来加速访问多个硬盘驱动器上的文件的命令。不幸的是,要么忽略并行化,要么未填充变量。 found=""; IFS=$'\n' for hdd in "${hdd_list[@]}" do found+=$'\n'$(find "$hdd" -name "*filter*" -type f &) # ignores parellelization found+=$'\n'$(find "$hdd" -name "*filter*" -type f) & # doesn't fill variable ...

Admin

并行限制是否会导致某些项目无法检查?
parallelism

并行限制是否会导致某些项目无法检查?

我的机器上有近 400 个 git 存储库。 这是我用来集体查找他们的状态的脚本: function Check() { gitFolder="$1" parent=$(dirname $gitFolder); Status=$(git -C $parent status) if [[ $Status == *Changes* ]] || [[ $Status == *Untracked* ]]; then Info $parent; git -C $parent status --porce...

Admin

如何并行化 bash for 循环并使用迭代变量进行文件 IO
parallelism

如何并行化 bash for 循环并使用迭代变量进行文件 IO

我有一个 bash 脚本,或多或少看起来像这样: N=32 for i in $(seq -f "%06g" 0 ${LAST_NUM}) # LAST_NUM is an env variable do ((j=j%N)); ((j++==0)) && wait # Wait for all processes in batch to finish python foo1.py $i & python foo2.py "foo1_output${i}.file_extension" & python foo3...

Admin

GNU Parallel 与 -j -N 仍然使用一个 CPU
parallelism

GNU Parallel 与 -j -N 仍然使用一个 CPU

如何在多核节点上获得合理的并行化而不导致资源饱和?与许多其他类似问题一样,问题实际上是如何学习调整 GNU Parallel 以获得合理的性能。 在下面的示例中,我无法在资源不饱和的情况下并行运行进程,或者在使用某些-j -N选项后所有内容似乎都在一个 CPU 中运行。 从在多核计算机中运行的 Bash 脚本内部,以下循环被传递到 GNU Parallel for BAND in $(seq 1 "$BANDS") ;do echo "gdalmerge_and_clean $VARIABLE $YEAR $BAND $OUTPUT_PIXE...

Admin

Bash:如何检查任何子shell是否失败?
parallelism

Bash:如何检查任何子shell是否失败?

考虑这段代码: job() { local id=$1 sleep $id } do_job_in_parallel() { local pids=() # run subshells for id in $(seq 4) do job $id & pids=("${pids[@]}" $!) done # wait subshells for ((i=0; i<${#pids[@]}; ++i)) do local pid=${pids[$i]} wait $pid ...

Admin

增加 max_parallel_downloads 在 yum 命令中无效
parallelism

增加 max_parallel_downloads 在 yum 命令中无效

要在 Red Hat 或 CentOS 计算机中安装所有更新,我们使用以下命令 yum -y update --skip-broken --nobest 我们正在寻找方法来缩短安装更新的总运行时间。根据 yum 文档yum.conf(5) - Linux 手册页 (man7.org),有一个参数max_parallel_downloads可用于配置同时下载包的数量。我更新了此参数并进行了测试,但看起来此参数要么未应用,要么无效。 以下是观察结果。计算机中安装了 205 个更新。 参数是否max_parallel_downloads未应用或无效? EC2 实...

Admin