Parallel Virtual Machine

简介:
As already mentioned earlier, our parallelization of the collision detection methods presented earlier was implemented using Parallel Virtual Machine or PVM ([ GBD+94 ]). PVM is the result of ongoing research into the use of heterogenous networks in computing at the University of Tennessee, Oak Ridge National Laboratory and other universities. It is essentially a system that allows a network of very different types of computers to be used as a single, parallel computers for example as in  4.2 . Of course, a specific type of computer can only be used if a version specific for the architecture of the computer is available.

More precisely, the system consists of two parts. The first part is a daemon program, called pvmd3 or pvmd. This daemon must run on every computer in the network that is to be used in the computing network. If there is no daemon available for this system, the system cannot be used. The daemon allows a computer to be used in different PVM's. The second part in the PVM system is a library. This library contains a number of tools and routines necessary to start up programs, add or remove computers from the virtual machine etc. In the current implementation of PVM, three programming languages are supported, namely C, C++ and FORTRAN, since these languages are most often used in scientific computing.


   
Figure 2: PVM allows easy use of heterogeneous computer networks
\begin{figure}
\begin{center}

\includegraphics [width=7cm] {pvm_het.eps}
\end{center}\end{figure}

Now, when designing an application using PVM, you have to take into account that the basic element of computation is a task. Such a task usually corresponds with a UNIX task. It can, using the functionality offered by the PVM library, start up and kill other tasks, communicate with them and much more. A complete description and manual can be found in [GBD+94]. It is important to notice that the execution of tasks can be handled completely by the PVM daemon. We can let PVM decide on which computer and when exactly the task is effectively executed (of course, as fast as possible and taking into account the dependencies between the computations performed in the tasks). On the other hand, if you know that a certain computer is particularly fast in handling the computation needed by a certain task, it is perfectly possible to assign that task to that computer. As you can see, PVM allows great flexibility in parallel and concurrent computation and at the same time provides an abstract interface to the network of computers so you don't have to worry about specific implementations for different architectures.

目录
相关文章
|
Ubuntu Linux 网络安全
【ubuntu】MobaXtem远程登录ubuntu系统(或虚拟机)
【ubuntu】MobaXtem远程登录ubuntu系统(或虚拟机)
|
12月前
|
并行计算 Ubuntu 开发工具
Jetson学习笔记(一):jetson 系列镜像下载、烧写、设置散热风扇、中文包、pip、中转英目录、软件源、显示CSI摄像头
关于NVIDIA Jetson系列设备的入门学习笔记,涵盖了从下载镜像、烧录、设置散热风扇、安装中文语言包、配置环境变量、安装CUDA和OpenCV,到显示CSI摄像头和增加Swap交换空间的详细步骤。
781 0
Jetson学习笔记(一):jetson 系列镜像下载、烧写、设置散热风扇、中文包、pip、中转英目录、软件源、显示CSI摄像头
|
11月前
|
存储 人工智能 缓存
官宣开源 阿里云与清华大学共建AI大模型推理项目Mooncake
近日,清华大学和研究组织9#AISoft,联合以阿里云为代表的多家企业和研究机构,正式开源大模型资源池化项目 Mooncake。
|
Linux 开发者
bpftrace使用案例学习
bpftrace使用案例学习
|
前端开发 Linux 调度
ftrace、perf、bcc、bpftrace、ply的使用
ftrace、perf、bcc、bpftrace、ply的使用
|
消息中间件 NoSQL 中间件
中间件发布-订阅模式(Pub/Sub)
【7月更文挑战第1天】
436 2
Linux内核的异常修复原理
Linux内核的异常修复原理
|
Linux 调度 C语言
【Linux C/C++ 线程同步 】Linux互斥锁和条件变量:互斥锁和条件变量在Linux线程同步中的编程实践
【Linux C/C++ 线程同步 】Linux互斥锁和条件变量:互斥锁和条件变量在Linux线程同步中的编程实践
402 0
|
弹性计算 大数据 测试技术
阿里云4核8g服务器价格以及收费标准_2024年新版报价
阿里云服务器4核8g配置多少钱一年?1个月费用多少?云服务器u1实例3折优惠价955.58元一年,计算型c7云服务器4核8G价格2944.79元一年。4核8G服务器按月购买比较贵,经济型e实例4核8G配置1个月216元,通用算力型u1服务器336.96元一个月