首页 文章
  • 0 votes
     answers
     views

    在同一主机上并行运行ansible playbooks

    我正在尝试运行30个os.commands,它们在python脚本中以线程并行方式在同一主机上运行ansible-playbook . 如果我以连续方式运行30个ansible-playbooks,它将完成所有30个工作 . 但是当我尝试以并行的方式运行它们时,一些剧本可以完成一些不执行任务的任务 . Python正在处理剧本的线程运行 . 我认为当ansible试图在同一主机上同时运行多个an...
  • 0 votes
     answers
     views

    使用OpenMP在C中并行化基数排序

    您如何在C语言中使用OpenMP并行化基数排序算法? 我的程序是对典型基数排序的修改:它根据数字的二进制表示对整数数组进行排序,在这里你可以改变应该被解释为一位数的位数(基本上是用于根据整数的大小来获得不同的运行时间 . 我有一个基数函数,它有三个参数: // n is the number of elements in data // b is number of bits that shoul...
  • 1 votes
     answers
     views

    如何选择.par.map(...).seq的输出以及如何控制它?

    我经常使用 .par.map(...).seq . 但是,我总是想知道我的方法的实际输出类型:哪个Seq实现并确保它不会产生奇怪的行为,例如视图或流可能发生的事情 . 那么1) .par.map(...).seq 的实际输出类型是什么? 我尝试在shell中,它是一个用于列表和范围输入的Vector,以及一个用于数组输入的ArraySeq . 但是通过查看源代码,我无法理解选择的方式或位置(特征...
  • 5 votes
     answers
     views

    如何优化spark sql并行运行它

    我是一个火花新手,并使用Spark SQL / hiveContext有一个简单的spark应用程序: 从蜂巢表中选择数据(10亿行) 做一些过滤,聚合包括row_number over window function选择第一行,group by,count()和max()等 . 将结果写入HBase(数亿行) 我提交作业在纱线集群(100个 Actuator )上运行它,它很慢,...
  • 0 votes
     answers
     views

    如何使用RxJava2和Retrofit2进行并行多个非阻塞服务请求

    我需要一些帮助来实现使用RxJava2和Retrofit2的并行异步调用 . 我的要求是; 1)我有多个保险公司(现在我只拿两个),我需要使用该保险公司名称发送多个并行请求 . 2)如果其中任何一个给出服务器错误,那么剩余的请求不应该被阻止 . 以下是我到现在为止所做的事情; ArrayList<String> arrInsurer = new ArrayList<>();...
  • 1 votes
     answers
     views

    从CUDA中的threadId获取一个int

    我对CUDA很新 . 我需要在计算中使用线程ID,但它不起作用 . rem总是0.我需要线程的索引来计算数组中的索引,所以我不能将它们转换为浮点数来进行计算 . 内核如下: _global__ void initializationCubes(float* dVer, float* dCub, int gridSize, float* test) { int index=block...
  • -1 votes
     answers
     views

    仅使用Cuda重写openCV函数

    我的代码用c编写,我使用openCV函数进行图像处理任务 . 我想在GPU中运行我的代码(使用cuda)来读取相机/流输入并在每个帧中并行执行图像处理任务 . 我已经读过一些我不能在.cu代码中包含openCV函数的地方,因为NVCC无法编译openCv函数(如果不是这样,请纠正我) 我在openCV文档中找到了openCV gpu模块,但是我不希望并行运行整个函数,我想要并行处理整个算法(换句话...
  • 2 votes
     answers
     views

    Docker并行运行cron作业

    使用简单的服务器 我使用一个简单的节点(centos或ubuntu)来运行我的Web应用程序,并在那里配置了一些cron作业来运行计划任务 . 在那一刻,一切都奏效了 . 使用Docker Swarm Cluster 我将我的应用程序迁移到Docker Swarm集群 . 现在,crons同时在多个容器中运行,这对我来说至关重要 . 我知道Docker正在研究名为 jobs 的新功能,但我现在需...
  • 5 votes
     answers
     views

    Intel指令的LOCK前缀 . 有什么意义?

    我阅读了英特尔手册,发现指令有一个锁定前缀,可以防止处理器同时写入同一个内存位置 . 我很兴奋 . 我想它可以用作硬件互斥 . 所以我写了一段代码来拍摄 . 结果非常令人沮丧 . 锁不支持MOV或LEA指令 . 手册说LOCK仅支持ADD,ADC,AND,BTC,BTR,BTS,CMPXCHG,CMPXCH8B,DEC,INC,NEG,NOT,OR,SBB,SUB,XOR,XADD和XCHG . ...
  • 101 votes
     answers
     views

    Powershell可以并行运行命令吗?

    我有一个powershell脚本对一堆图像进行一些批处理,我想做一些并行处理 . Powershell似乎有一些后台处理选项,如启动作业,等待作业等,但我找到的并行工作的唯一好资源是编写脚本文本并运行它们(PowerShell Multithreading) 理想情况下,我喜欢类似于.net 4中的并行foreach的东西 . 有点像: foreach-parallel -threads 4 (...
  • 1 votes
     answers
     views

    使用线程进行并行编程

    好吧,我对我应该做什么以及如何做有点困惑 . 我知道并行编程和线程理论,但这是我的情况: 我们在给定文件夹中有多个日志文件 . 我们在数据库中读取这些日志文件 . 通常读取这些文件需要几个小时才能读取,就像我们在串行方法中那样,即我们遍历每个文件,然后为每个文件打开一个SQL事务并将日志插入数据库,然后读取另一个并执行相同操作 . 现在,我正在考虑使用并行编程,因此我可以使用所有CPU的核心,但是...
  • 1 votes
     answers
     views

    将两个工作流嵌套在单个工作流中以并行运行

    我相信我不是第一个尝试这个的人,却找不到一篇关于它的帖子 . 我试图在单个工作流中嵌套两个工作流,以便两个工作流并行运行,我得到10个流程 . 这是我首先尝试的: Workflow a { param( [parameter()]alist ) sequence { $WORKFLOW:aOutput = @() fo...
  • 7 votes
     answers
     views

    在R中的大型数据集上运行回归树

    我正在处理大约150万次观测的数据集 . 我发现在我的数据的一小部分上运行一个回归树(我正在使用 party 包中的 mob() *函数)花费的时间非常长(我不能运行超过50k的子集) . 我可以想到两个主要问题是减慢计算速度 使用整个数据集在每个步骤计算拆分 . 我会对基于数据的随机子集选择变量在每个节点上拆分的结果感到满意,只要它继续补充树中每个子节点处的样本大小即可 . 操作未并行...
  • 5 votes
     answers
     views

    TraMineR的并行计算

    我有一个包含超过250,000个观测值的大型数据集,我想使用 TraMineR 包进行分析 . 特别是,我想使用命令 seqtree 和 seqdist ,当我使用10,000个观察的子样本时,它可以正常工作 . 我的计算机可以管理的限制是大约20,000个观察 . 我想使用所有观察结果,我确实可以访问一台能够做到这一点的超级计算机 . 但是,这并没有太大帮助,因为该过程仅在单个核心上运行 . 因...
  • 6 votes
     answers
     views

    并发,4个CUDA应用程序竞争获取GPU资源

    如果有四个并发的CUDA应用程序在一个GPU中竞争资源,那么他们可以将工作卸载到图形卡上会发生什么? Cuda编程指南3.1提到某些方法是异步的: 内核启动 设备设备内存副本 64 KB或更少内存块的主机设备内存副本 由Async后缀的函数执行的内存复制 内存设置函数调用 同时它提到具有计算能力2.0的设备能够同时执行多个内核,只要内核属于同一个上下文 . 这种类型的并发只...
  • 0 votes
     answers
     views

    记忆计算重叠问题在cuda

    我有一个处理大量数据的CUDA内核 . 由于我无法一次传输所有数据,因此我必须将它们分成块并处理它们,然后更新GPU上的输出 . 我正在解析文件中的输入数据 . 我在想是否可以通过在主机和GPU中都有两个缓冲区来重叠块的内存传输 . 在处理一个卡盘时,我可以读取另一个卡盘,将其传输到GPU并将内核启动到同一个流 . 我的问题是内核的执行时间比解析数据并将其传输到GPU要慢 . 鉴于memcpys没...
  • 0 votes
     answers
     views

    执行者可以在spark中共享核心吗?

    在配置spark作业时,我有时会看到人们建议每个执行程序的核心数大于核心总数除以执行程序数 . 值得注意的是,在这个example中,@ 0x0FFF建议如下: --num-executors 4 --executor-memory 12g --executor-cores 4 如果我们计算 Actuator 核心的总数,我们得到 4 cores per executor * 4 execu...
  • 1 votes
     answers
     views

    Apache Spark中的CPU使用率是否有限?

    我最近发现,即使在 local[1] 模式下运行spark或使用带有1个 Actuator 和1个核心的Yarn,在UDF中添加并行计算(例如使用并行集合)也会提高性能 . 例如 . 在 local[1] 模式下,Spark-Jobs消耗尽可能多的CPU(即,如果我有8个内核,使用 top 测量,则为800%) . 这看起来很奇怪,因为我认为Spark(或纱线)限制了每个Spark应用程序的CPU...
  • 25 votes
     answers
     views

    哪些哈希算法可并行化?利用多核CPU优化大文件的散列

    我有兴趣优化一些大文件的散列(优化挂钟时间) . I / O已经进行了足够的优化,I / O设备(本地SSD)仅以大约25%的容量进行分流,而其中一个CPU内核完全超出 . 我有更多核心可用,将来可能会有更多核心 . 到目前为止,如果我碰巧需要同一个文件的多个哈希值,我只能使用更多内核,同时说MD5和SHA256 . 我可以使用相同的I / O流来提供两个或更多哈希算法,并且我可以免费获得更快的...
  • 7 votes
     answers
     views

    如何在4核CPU上更快地完成相同的计算:4个线程或50个线程?

    让我们假设我们有固定数量的计算工作,没有阻塞,睡眠,I / O等待 . 这项工作可以很好地并行化 - 它包含100M小型和独立的计算任务 . 4核CPU的速度更快 - 运行4个线程还是......让我们说50?为什么第二种变体应该是摇摆不定的? 我假设:当你在4核CPU上运行4个重线程而没有另外占用CPU的进程/线程时,调度程序根本不允许在核心之间移动线程;在这种情况下,它没有理由这样做 . C...
  • 1 votes
     answers
     views

    更多线程,速度更慢,即使有足够的CPU核心

    我有一个可以启动任意数量线程的应用程序,每个线程执行相同的任务:浏览包含5000条消息的向量,然后处理它们中的每一条 . 在线程之间,没有资源竞争,没有竞争条件 . 我运行我的应用程序的盒子上有4个cpu核心 . 当我运行我的应用程序时,没有其他进程正在执行任何CPU使用任务 . 但是,我得到的结果如下 . 如果只有一个线程在运行,则线程花费0.45秒来处理这5000个消息 . 如果有4个线程正在...
  • 3 votes
     answers
     views

    * Windows *中的并行黄瓜/ Watir场景

    有关我可以做什么/用于在Windows上并行运行黄瓜场景的任何想法?到目前为止,我已经尝试过(以下结果): WatirGrid 必须使用Ruby线程实际以“并行”方式运行 . 这迫使我们将浏览器对象包装在一个线程中,因此一旦线程块关闭就无法访问 . (无法将Browser对象传递给黄瓜环境) Hydra: 需要SSH(和公钥)访问远程盒子(即没有Windows) Selenium Grid: 超...
  • 47 votes
     answers
     views

    x86中“PAUSE”指令的目的是什么?

    我正在尝试创建一个自旋锁的哑版 . 浏览网页时,我在x86中遇到了一个名为“PAUSE”的汇编指令,该指令用于向处理器提供当前在此CPU上运行自旋锁的提示 . 英特尔手册和其他可用信息说明了这一点 在大多数情况下,处理器使用此提示来避免内存顺序违规,从而大大提高了处理器性能 . 因此,建议在所有自旋等待循环中放置PAUSE指令 . 文档还提到“等待(一些延迟)”是指令的伪实现 . 上段的最后一...
  • 6 votes
     answers
     views

    .net 4.0任务并行库与MPI.NET

    .net 4.0任务并行库是否替换MPI.NET以进行高性能计算? MPI.NET在这里找到http://www.osl.iu.edu/research/mpi.net/svn/是一个高性能,易于使用的Microsoft .NET环境的消息传递接口(MPI)实现 . MPI是编写在分布式内存系统(如计算集群)上运行的并行程序的事实标准 . .NET 4 TPL说:“任务并行库(TPL)是.NET...
  • 1 votes
     answers
     views

    需要对MPI做一些澄清

    我正在研究各种并行编程模型,我偶然发现了MPI . 有一些我不确定的事情 . 据我所知: MPI的主要功能是允许在集群中并行运行的相关进程之间的通信 . 它是否正确? 程序在主节点上运行,主节点又将特定任务传递给工作节点 - 并接收结果 . 不需要在每个工作节点上提供代码副本 . 此外,我发现的少数更新的MPI框架似乎只支持一组受限制的语言 . 我正在尝试使用Java进行实验,但我发现...
  • 1 votes
     answers
     views

    使用parfor的MCC编译程序的运行时错误

    运行使用parfor编译的MCC程序时遇到问题 . 非编译的.m版本可以工作(没有错误) . 当我运行编译版本时,我得到“distcomp.remoteparfor”未定义 . 我相信我确实有以下链接中描述的错误 . http://www.mathworks.com/support/solutions/en/data/1-PAHWE/index.html?product=CO&soluti...
  • 1 votes
     answers
     views

    plyr中的难以理解的错误:名称中的错误(结果)< - 名称(件):'names'属性[11644]必须与向量[11184]的长度相同

    我在群集上运行 plyr 时遇到错误,而我在下面共享伪代码'm having a tough time debugging it. I'm . 我在 Xgetopt 中运行一个名为 getopt 的函数,它处理错误 . 它基本上对输入矩阵进行网格搜索优化,逐行 . 输入矩阵为11644x2 . 任何人都能告诉我这个错误来自何处或意味着什么?我不能做回溯,因为我无法在本地复制错误 . &gt; li...
  • 1 votes
     answers
     views

    Google App Engine-MapReduce是我在 Cloud 中大规模并行解决方案的最佳选择吗?

    Google App Engine-MapReduce是 Cloud 计算中大规模并行解决方案的最佳选择吗?我的问题在4核PC上需要数小时多线程 . 我会说600分钟可能会 . 我更喜欢1000台服务器在36秒内完成 . 在我的应用中,从4核心线程切换到1000服务器处理显然是可行的 . 实际上,我已经可以向4个内核发送1000个小作业,但考虑到我仍然只有4个内核,它不会比4个大型作业更早完成4个...
  • 2 votes
     answers
     views

    请澄清VHDL中顺序和并发执行的概念

    我在学校熟悉了一点Verilog,现在,一年后,我买了一台Basys 3 FPGA板 . 我的目标是学习VHDL . 我一直在阅读一本名为“Free Range VHDL”的免费书,它有助于理解VHDL语言 . 我还搜索了包含VHDL代码的github repos以供参考 . 我最关心的是顺序执行和并发执行之间的区别 . 我理解这两个词的含义,但我仍然无法想象为什么我们可以将&quot;proce...
  • 0 votes
     answers
     views

    TestNG Appium Paralell运行组织

    我正在尝试创建一个testNG套件,用于在多个设备上同时使用Appium运行测试 . 我目前正在使用@BeforeSuite为每个设备设置服务器/驱动程序,然后使用@BeforeMethod和@AfterMethod函数将连接分发到测试方法 . 我有一个主套件套件.xml,可以调用与我的每个测试类关联的不同子.xml文件 . 测试类每个都与@Factory相关联,这允许我并行运行实例(根据连接设备...

热门问题