并行高效地运行多个作业

2023-12-01

操作系统: Centos

我有一些30,000要运行的作业(或脚本)。每项工作需要 3-5 分钟。我有48 CPUs(nproc = 48)。我可以用40 CPUs to run 40 Jobs并行。请建议一些脚本或工具可以通过并行运行每 40 个作业来处理 30,000 个作业。

我做了什么:

  • 我创建了 40 个不同的文件夹,并通过为每个目录创建 shell 脚本来并行执行作业。

  • 我想知道下次有更好的方法来处理此类工作。


正如 Mark Setchell 所说:GNU 并行。

find scripts/ -type f | parallel

如果您坚持保留 8 个 CPU 空闲:

find scripts/ -type f | parallel -j-8

但通常简单地使用会更有效nice因为当其他人不需要它们时,这将为您提供全部 48 个核心:

find scripts/ -type f | nice -n 15 parallel

了解更多:

  • 观看介绍视频以进行快速介绍:https://www.youtube.com/playlist?list=PL284C9FF2488BC6D1
  • 浏览本教程 (man parallel_tutorial)。你命令行 爱你。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

并行高效地运行多个作业 的相关文章

  • Linux - 查找特定文件之后和之前的文件

    我试图在我的计算机上查找特定文件创建前 1 小时和创建后 1 小时创建的文件 这是我尝试过的方法 find root newermt 2012 10 04 1800 and newermt 2012 10 04 2000 exec ls l
  • 在 Linux 上使用命令行 PHP 检查互联网连接

    我在 Linux 上使用命令行 PHP 来打开蓝牙拨号连接 并且我需要一种快速的方法来检查互联网连接是否处于活动状态 嗯 不一定要脏 但要快 使用exec运行外部命令不是问题 我正在考虑 ping 一些稳定的服务器 例如谷歌 但我想知道是否
  • 如何在 Linux Bash 中通过 SFTP 将数据传输到远程文件而不将数据存储在本地文件中?

    我需要能够通过 SFTP 将数据从内存传输到远程文件 我最初是通过 SSH 进行此操作的 在工作时发现我没有对远程位置的 SSH 访问权限 只有 SFTP 访问权限 下面是我的原始 SSH 代码的示例 echo secret data ss
  • IPC:在两个程序之间使用 C++ 中的命名管道

    我试图在同一台机器上运行的两个不同程序之间实现IPC 在我的例子中是CentOS7 为了实现一种松散耦合 我决定对 IPC 使用命名管道 因此 我正在使用以下示例并遇到了不同的问题 创建并写入管道 include
  • 为什么我不能将 Unix Nohup 与 Bash For 循环一起使用?

    例如 此行失败 nohup for i in mydir fasta do myscript sh i done gt output txt bash syntax error near unexpected token do 正确的做法是
  • 尽管 EXPORT_SYMBOL 模块插入时出现“模块中的未知符号”

    我正在尝试编译并插入 r8169 realtek 以太网驱动程序 我的内核版本是 ebin sony uname r 4 2 0 rc3 custom 我的本地磁盘中有相同的完整源代码 用于安装当前的内核 当我运行时该模块编译成功make
  • 字符串常量之前的预期标识符

    有一个这样的程序 include
  • 如何重新安装cudnn?

    安装Cudnn 4 0 4后 我发现如果我想运行我下载的代码 我需要更高版本的Cudnn 然后我下载 cudnn 7 0 linux x64 v4 0 prod tgz 并直接按以下顺序安装 sudo cp include cudnn h
  • Linux 上共享内存的生命周期是多长

    我正在使用 ftok shmget shmat shmdt 函数在 Linux 上创建 写入和读取共享段 如果我写入一个程序中的段 然后退出 然后稍后从另一个程序中读取该段 我会惊讶地发现数据仍然存在 我预计当共享一个段的最后一个进程执行
  • Cmake 错误未定义对“pthread_create”的引用

    我对 cmake FindThreads 进行了测试 这是我的源代码test cpp和CMakeLists txt include
  • 获取所有 JVM 使用的所有 Java 类的列表?

    我想要一个在某个时刻在多个线程 JVM 中加载的所有类的列表 我知道当你运行java时 verbose参数 您可以将其写入文件 如下所示 java verbose class com package Foo gt classes used
  • Linux 是否允许从信号处理程序进行任何系统调用?

    我的理解是 一般来说 如果您从信号处理程序调用非异步信号安全函数 则行为是未定义的 但我听说 Linux 允许您安全地调用任何系统调用 这是真的 另外 SIGSEGV 处理程序的唯一可移植行为是中止或退出 但我知道如果返回 linux 实际
  • python中的多服务器监控/自动重启

    我有 2 个服务器程序 必须使用 GNU Screen 启动 我想使用基于 Python 的程序来强化这些服务器 防止崩溃 该程序启动每个屏幕会话 然后监视服务器进程 如果服务器进程崩溃 我需要 python 代码来终止无关的屏幕会话并再次
  • c - 后台运行的程序的退出状态

    我有一个任务 其中我必须创建一个迷你 shell 它能够执行很多操作 包括作业控制 我设法使用 fork 和 execvp 创建新的工作 但我还想获取 execvp 运行的程序的退出代码 根据我从其他帖子中查找到的内容 我可以使用以下方法来
  • ulimit -r 返回不同的值

    我将以下两行添加到系统范围的 etc security limits conf 中 soft rtprio 55 hard rtprio 55 系统重新启动后 根据我在计算机上访问用户帐户的方式 我会得到两个不同的结果 user clien
  • top命令的CPU使用率计算

    我正在尝试使用 GNU coreutil top 的公式来计算 CPU 使用率的百分比 但 top 正在使用一些 half total 来计算百分比 即在百分比上添加 0 5 在top的utils c中 以下行 在 3 8 beta1 中
  • 无法声明接口:资源繁忙

    我正在使用 USB4Java 低级版本 并且基本上是根据这段代码工作的here http www mets blog com java usb communication usb4java 我在 Ubuntu 中工作 遇到了有关权限的问题
  • 在Linux服务器中安装ZLIB

    我要安装ZLIB http www techsww com tutorials libraries zlib installation installing zlib on ubuntu linux php在Linux服务器中 我的服务器帐
  • 为什么在setsid()之前fork()

    Why fork before setsid 守护进程 基本上 如果我想将一个进程与其控制终端分离并使其成为进程组领导者 我使用setsid 之前没有分叉就这样做是行不通的 Why 首先 setsid 将使您的进程成为进程组的领导者 但它也
  • 线程和 fork()。我该如何处理呢? [复制]

    这个问题在这里已经有答案了 可能的重复 多线程程序中的fork https stackoverflow com questions 1235516 fork in multi threaded program 如果我有一个使用 fork 的

随机推荐

  • 如果将 ImageResizer 与 Azure blob 一起使用,我是否需要 AzureReader2 插件?

    我正在开发一个个人项目来管理我的俱乐部的用户 它托管在免费的 Azure 包上 至少目前如此 部分作为试用 Azure 的实验 创建他们的记录的一部分是添加照片 因此我有一个联系人卡片视图 可以让我看到他们是谁 他们何时来以及一张照片 我已
  • 我应该尽可能避免使用 JS 而使用 CSS 吗? [关闭]

    Closed 这个问题是基于意见的 目前不接受答案 我正在寻找最佳实践答案 目前我正在尝试向我网站的导航栏添加一个下拉菜单 我发现我可以使用 CSS 来做到这一点 而且我也可以使用 JS Angular 来做到这一点 我读到过 因为使用 J
  • 使用 Selenium 将元素滚动到视图中

    Selenium 1 x 或 2 x 中是否有任何方法可以滚动浏览器窗口 以便 XPath 标识的特定元素位于浏览器的视图中 Selenium 中有一个 focus 方法 但在 FireFox 中似乎没有物理滚动视图 有人对如何做到这一点有
  • D3.js 如何将力布局的节点排列在圆上

    我开发了一种力量布局来代表社会群体之间的关系 现在我想让节点分布在一个圆圈中 并有链接连接它们 做这个的最好方式是什么 完整版本的代码 没有数据 在这里http jsfiddle net PatriciaW zZSJT 为什么我也必须在这里
  • UICollectionView 和补充视图崩溃

    我有一个 UICollectionView 工作正常 有 2 种方法可以到达此页面 虽然应用程序 点击推送通知 除了一种情况外 一切都很好 如果用户正在聊天 然后退出应用程序 主页按钮 然后他收到一条推送通知 按下它 应用程序崩溃了 cra
  • Matlab - 如何以函数内的字符串形式检索函数调用的确切参数列表?

    假设我有以下功能 function name the paramlist varargin Print out varargin exactly how it is called as a string 基本上我想要它做的是 调用 name
  • 运行 pyinstaller 时出错(1920,“LoadLibraryEx”,“系统无法访问该文件”)

    我试图将我的 python 脚本编译为 exe 以便我可以将其发送给可以使用而无需安装 python 的朋友 但我遇到了问题并且无法找到解决方案 我发现了类似的问题Pyinstaller win32ctypes pywin32 pywint
  • 单击按钮时将道具传递给另一个组件

    在我的 nextJS 应用程序中 我想将一个组件的 props 传递给另一个组件 该组件既不是第一个组件的父组件 也不是第一个组件的子组件 我该怎么做 有一个Orderdiv 内的组件Orders页面和OrderViewer在另一个 div
  • 用 Monadic 咒语召唤 JQuery Deferred

    灵感来自this 优秀 关于在 javascript 中使用 Promises 的讨论 我正在尝试弄清楚如何使用 Deferred 将异步和非异步函数链接在一起 以避免在使用我的 时支付回调税全局存储 code 我有一些与此相关的问题 但我
  • 我如何知道 AppDelegate 中的方向发生了变化

    设备如何知道方向变化的功能是 void viewWillLayoutSubviews 和 void viewDidLayoutSubviews 但是 它们只是在控制器中 现在我想知道是否有类似的函数可以知道文件 AppDelegate m
  • 如何使用 Elixir/phoenix 从 csv 文件导入用户?

    我有一个包含用户列表的 csv 文件以及 UserController 内的以下导入方法 我想通过使用表单提交 csv 文件来导入这些用户 看来我做错了 用户控制器 def import conn user gt user params d
  • 在 Windows Phone 8 上启动 PDF 阅读器

    我正在尝试使用下面的代码启动 pdf 阅读器 但它不起作用 有人可以帮助我吗 private async Task
  • 如何使用 angular2 http API 跟踪上传/下载进度

    因此 有许多临时库支持 Angular2 中的上传 下载进度 我不知道如何使用本机 Angular2 http api 在上传 下载时显示进度 我想使用原生http api的原因是因为我想利用 围绕本机 http api 的 http 拦截
  • 如何在 Java 中从 SQL*Plus 以“SYS”身份连接到 Oracle

    我想连接到 Oracle 作为SYS来自 Java 中的 SQL Plus 但我无法连接 但我能够以名为的用户进行连接SCOTT 我的代码片段如下 public static void test script String fileName
  • Eclipse 表单部分工具栏中的切换按钮

    如何在 Eclipse UI Forms 的部分工具栏中实现切换按钮 如下图所示 我只找到向部分工具栏添加操作的示例 我认为关键是 IAction AS CHECK BOX toggleBotton new Action Messages
  • 使用附加构建器的导航栏上的 Firefox 扩展图标

    如何向 Firefox 添加一个图标 单击导航栏即可打开一个面板 Firebug 扩展就是一个例子 唯一不同的是我希望出现一个面板 Thanks 您可能想使用或查看此工具栏按钮库 https builder addons mozilla o
  • 如何渲染 DotML

    如何将 DotML 渲染成图表 据网站介绍here 从数据中获取图表需要三个步骤 首先 生成或手动键入包含 DotML 元素的 gt XHTML 或任何其他 XML 文件 Use http www martin loetzsch de DO
  • cout 语句中的调用顺序说明,后缀与前缀

    当我在打印测试时注意到实际值输出中出现意外情况时 我正在重载后缀和前缀 运算符并测试它们 作为示例 这是一个整数测试 int i 0 cout lt lt before prefix lt lt i lt lt prefixing lt l
  • 想要使从服务器端不可见的控件的客户端可见性变为真实

    我的页面中有一个文本框 其可见性从服务器端设置为 false 现在我想通过使用 java 脚本使其从客户端可见 这种情况下不能实现任何回发或部分回发
  • 并行高效地运行多个作业

    操作系统 Centos 我有一些30 000要运行的作业 或脚本 每项工作需要 3 5 分钟 我有48 CPUs nproc 48 我可以用40 CPUs to run 40 Jobs并行 请建议一些脚本或工具可以通过并行运行每 40 个作