小编arm*_*ndo的帖子

用扭矩运行程序

我在fortran中有一个代码,我编译后发送到超级计算机中作为pbs作业运行.我想修改源代码并再次编译它,同时保持已经运行的程序.我的问题是如果我修改源代码并生成一个新的可执行文件,如果我有一个运行不同的可执行文件的pbs作业会发生什么.是否会修改原始可执行文件的结果?

谢谢.

fortran pbs torque

2
推荐指数
1
解决办法
224
查看次数

如何找到未经修改的linux文件

我可以使用以下命令在目录中找到更改过去4分钟的文件:

find ~ -type f -mmin -4
Run Code Online (Sandbox Code Playgroud)

我怎么能找到没有改变最后X分钟的文件?

谢谢.

linux find

2
推荐指数
2
解决办法
341
查看次数

用awk分隔连接的列

我有一个数据文件,如下所示:

0.00000-130250.92921  28880.20200-159131.13121    301.58706
0.05000-130250.73120  28156.69202-158407.42322    294.03167
0.10000-130250.79137  28237.16138-158487.95275    294.87198
0.15000-130250.81209  28168.63042-158419.44250    294.15634
0.20000-130250.82418  28149.57611-158400.40029    293.95736
0.25000-130250.88438  28069.57135-158320.45573    293.12189
0.30000-130251.06059  28071.30576-158322.36635    293.14000
0.35000-130250.96639  28084.46351-158335.42990    293.27741
Run Code Online (Sandbox Code Playgroud)

正如您所看到的那些以" - "开头的列连接到前一个列,例如:0.35000-130250.96639,这应该是0.35000和-130250.96639.我可以用VIM分隔列,但我想知道是否可以用AWK做到这一点.

谢谢.

vim bash awk

2
推荐指数
1
解决办法
48
查看次数

MPMD MPI 执行中的通信

这篇文章与之前将线程绑定到某些 MPI 进程相关。在这里,有人询问如何为 MPI 等级分配不同数量的 OpenMP 线程。一种可能性如下

$ mpiexec <global parameters>
          -n n1 <local parameters> executable_1 <args1> :
          -n n2 <local parameters> executable_2 <args2> :
          ...
          -n nk <local parameters> executable_k <argsk>
Run Code Online (Sandbox Code Playgroud)

我不知道独立实例 executable_1、executable_2、...、executable_k 是如何相互通信的。我的意思是,如果在执行期间的某个时刻他们需要交换数据,他们是否使用内部通信器(在实例之间)和内部通信器(在同一实例中,例如可执行文件_1)?

谢谢。

multithreading mpi openmp openmpi

2
推荐指数
1
解决办法
554
查看次数

Gnuplot直方图与Matlab风格

我想使用Matlab中常用的样式用Gnuplot绘制3D直方图.我遵循的步骤顺序是:

set palette defined ( 0 '#000090',\
                      1 '#000fff',\
                      2 '#0090ff',\
                      3 '#0fffee',\
                      4 '#90ff70',\
                      5 '#ffee00',\
                      6 '#ff7000',\
                      7 '#ee0000',\
                      8 '#7f0000')

set pm3d at s
set view map 
splot 'test.dat' u 1:2:3
Run Code Online (Sandbox Code Playgroud)

制作情节的数据如下.结果图如下所示: 在此输入图像描述

正如您在下面的数据中看到的,大多数条目都为零,这使得绘图非常蓝.在Matlab中,可以制作这种类型的直方图,零值具有白色.只有不为零的点具有上面调色板中的颜色.我希望这些点是白色的,因为这会强调实际的采样区域.

我想知道我们是否可以在Gnuplot那样做.我试图在数据文件中省略零,但它导致了一个尖角图.

另外,我修改了明确定义零值的调色板,如下所示:

set palette defined ( 0 '#ffffff',\
                      1 '#000090',\
                      2 '#000fff',\
                      3 '#0090ff',\
                      4 '#0fffee',\
                      5 '#90ff70',\
                      6 '#ffee00',\
                      7 '#ff7000',\
                      8 '#ee0000',\
                      9 '#7f0000')
Run Code Online (Sandbox Code Playgroud)

但是,采样区域的边框看起来是紫色的:

在此输入图像描述

谢谢.

   1           1           1
   1           2           0
   1           3           0
   1           4           0
   1           5           0
   1 …
Run Code Online (Sandbox Code Playgroud)

matlab plot gnuplot

2
推荐指数
1
解决办法
157
查看次数

跳转到vim中的特定位置

我想将光标移动到特定位置,比如第 64 行和第 40 列。有没有办法在命令行上执行此操作。

我通常做的事:

:64
40|
Run Code Online (Sandbox Code Playgroud)

但是有没有一种方法可以将这两个命令合并为一个,以便我可以在命令行上输入所有内容?

谢谢。

vi vim

1
推荐指数
1
解决办法
2709
查看次数

为什么 Julia 代码性能比 Fortran 低很多?

我在几个地方读到 Julia 代码的性能可以(在某些条件下)与 Fortran 相比较。我在 Julia 中编写了以下代码:

Pi = 3.141592653589793238462643
n = 100000 
function integration_2d(n,Pi,sum)
       h = Pi/n
       for i=1:n
           x = h*(i-0.5)
           for j=1:n
               y = h*(j-0.5)
               sum = sum + cos(x + y)
           end
       end
       sum*h*h
end
Run Code Online (Sandbox Code Playgroud)

平均执行时间为 180 秒。与使用-O3选项编译的 Fortran 代码相比,结构非常接近的 Fortran 代码的执行时间为 0.013 秒。我想知道 Julia 代码在哪里失去了性能,任何评论都值得赞赏。谢谢。

julia

1
推荐指数
1
解决办法
128
查看次数

如何使用MPI在不同的处理器上使用相同的阵列

我想hist(1:1000)在使用OpenMPI的不同处理器上调用相同的数组,这样当一个处理器修改时,hist这个修改在其余的处理器中更新.

我已经编写了一个代码并声明hist(1:1000)但问题是hist在每个处理器上独立更新,然后我做的是将数据发送到"主节点",以便根据从站的信息更新另一个直方图,但这是我不想要的.我想在每个处理器上更新相同的直方图.

是否可以使用OpenMPI执行此操作?

c c++ fortran openmpi fortran90

0
推荐指数
1
解决办法
1638
查看次数

标签 统计

fortran ×2

openmpi ×2

vim ×2

awk ×1

bash ×1

c ×1

c++ ×1

find ×1

fortran90 ×1

gnuplot ×1

julia ×1

linux ×1

matlab ×1

mpi ×1

multithreading ×1

openmp ×1

pbs ×1

plot ×1

torque ×1

vi ×1