草庐IT

mpi_send

全部标签

linux - 为什么 MPI 给出运行时错误

在我输入之后sudoapt-getinstallmpich2mpich已安装,但第一个问题是我不知道文件安装在哪里。另一方面,当我写的时候mpirun-np3./hello.o它给了我:mpiexec_hani-laptop:cannotconnecttolocalmpd(/tmp/mpd2.console_hani);possiblecauses:1.nompdisrunningonthishost2.anmpdisrunningbutwasstartedwithouta"console"(-noption)Incase1,youcanstartanmpdonthishostwith

c - send() 总是被 EPIPE 打断

我在GNU/Linux下用C语言编程的多线程服务器中有这种奇怪的行为。当它正在发送数据时,最终会被SIGPIPE中断。因此,我设法忽略了send()中的信号并在每次操作后处理errno。因此,它有两种单独的发送方法,一种是一次发送大量数据(或至少尝试发送),另一种是发送几乎相似的数据量并将其分成小块。最后,我尝试用它来保持它发送数据。do{total_bytes_sent+=send(client_sd,output_buf+total_bytes_sent,output_buf_len-total_bytes_sent,MSG_NOSIGNAL);}while((total_byte

c - send() 总是被 EPIPE 打断

我在GNU/Linux下用C语言编程的多线程服务器中有这种奇怪的行为。当它正在发送数据时,最终会被SIGPIPE中断。因此,我设法忽略了send()中的信号并在每次操作后处理errno。因此,它有两种单独的发送方法,一种是一次发送大量数据(或至少尝试发送),另一种是发送几乎相似的数据量并将其分成小块。最后,我尝试用它来保持它发送数据。do{total_bytes_sent+=send(client_sd,output_buf+total_bytes_sent,output_buf_len-total_bytes_sent,MSG_NOSIGNAL);}while((total_byte

使用 dbus-send 关闭 Linux

我正在编写一个Java应用程序来远程关闭我的Linux机器。桌面应用程序等待命令发送给它。我试过使用“shutdown-h”,但这需要sudo权限,不是一个选项。然后,我使用以下dbus-send解决方案找到了一种无需sudo即可关闭的方法:dbus-send--print-reply--system--dest=org.freedesktop.Hal/org/freedesktop/Hal/devices/computerorg.freedesktop.Hal.Device.SystemPowerManagement.Shutdown这工作正常,但我试图弄清楚,使用dbus-send

使用 dbus-send 关闭 Linux

我正在编写一个Java应用程序来远程关闭我的Linux机器。桌面应用程序等待命令发送给它。我试过使用“shutdown-h”,但这需要sudo权限,不是一个选项。然后,我使用以下dbus-send解决方案找到了一种无需sudo即可关闭的方法:dbus-send--print-reply--system--dest=org.freedesktop.Hal/org/freedesktop/Hal/devices/computerorg.freedesktop.Hal.Device.SystemPowerManagement.Shutdown这工作正常,但我试图弄清楚,使用dbus-send

linux - notify-send -i 图标的条件

我尝试发送带有图标的通知(在Ubuntu16.04中)。-i,--icon=ICON[,ICON...]Specifiesaniconfilenameorstockicontodisplay.显示图标有什么条件吗?我的桌面上有一个图标“image.png”;但是当我尝试这个命令时:notify-send"message"-iDesktop/USERNAME/image.png它不显示图标。(它只是显示消息)但是,当我尝试时:notify-send"Message"-i/usr/share/pixmaps/gksu.png它显示图标和消息。这两个图标有什么区别?它们具有相同的类型(png

linux - notify-send -i 图标的条件

我尝试发送带有图标的通知(在Ubuntu16.04中)。-i,--icon=ICON[,ICON...]Specifiesaniconfilenameorstockicontodisplay.显示图标有什么条件吗?我的桌面上有一个图标“image.png”;但是当我尝试这个命令时:notify-send"message"-iDesktop/USERNAME/image.png它不显示图标。(它只是显示消息)但是,当我尝试时:notify-send"Message"-i/usr/share/pixmaps/gksu.png它显示图标和消息。这两个图标有什么区别?它们具有相同的类型(png

c++ - c++11 和 MPI 库的兼容性

在我的linux中安装gcc和mpich库后,我可以使用mpicxx编译器编译我的代码。是否可以通过升级gcc编译器将c++11与mpi库一起使用? 最佳答案 用较新版本更改编译器通常应该有效,除非观察到一些强大的代码生成更改(例如,不同的数据对齐方式或不同的ABI)。MPI是一个库,因此它不关心您使用的是什么语言结构,只要这些结构不会弄乱它的内部结构即可。由于您要将C++11用于它提供的线程,因此您应该注意一些事项。首先,多线程并不总是与MPI配合得很好。大多数MPI实现本身都是内部线程,但默认情况下不是线程安全的。其次,MPI定

c++ - c++11 和 MPI 库的兼容性

在我的linux中安装gcc和mpich库后,我可以使用mpicxx编译器编译我的代码。是否可以通过升级gcc编译器将c++11与mpi库一起使用? 最佳答案 用较新版本更改编译器通常应该有效,除非观察到一些强大的代码生成更改(例如,不同的数据对齐方式或不同的ABI)。MPI是一个库,因此它不关心您使用的是什么语言结构,只要这些结构不会弄乱它的内部结构即可。由于您要将C++11用于它提供的线程,因此您应该注意一些事项。首先,多线程并不总是与MPI配合得很好。大多数MPI实现本身都是内部线程,但默认情况下不是线程安全的。其次,MPI定

linux - 两个线程可以在同一个套接字上同时 `send` 和 `recv` 吗?

我需要反复向/从套接字发送和接收UDP数据报。我的想法是生成两个线程,一个负责发送,另一个负责接收。整个想法只有在一个线程可以等待阻塞recv()时才有意义。另一个执行send()同时在同一个socket上。我做了一些谷歌搜索,发现了这个SO问题:Areparallelcallstosend/recvonthesamesocketvalid?接受的答案提到send()和recv()是线程安全的(哇…),但接着会出现一个令人震惊的评论:Thisdoesn'tnecessarilymeanthatthey'llbeexecutedinparallel糟糕。这是否意味着如果我实现我的多线程想