【问题标题】:What is a good project for improving in parallel/distributed programming [closed]什么是改进并行/分布式编程的好项目[关闭]
【发布时间】:2023-03-12 23:36:05
【问题描述】:

我是并行/分布式编程个人项目的想法。我熟悉 openMP、Intel Cilk、Java Concurrent 和 MPI,我觉得有必要开始写一些大的东西,但想出了一个有趣的想法。你有吗?

编辑:我正在考虑(但由于害怕被嘲笑而犹豫告诉你)是在 Windows 中为 MPI 实现调试器/api-call 拦截器。我在调试以前的项目时遇到了问题,因为我买不起专用的调试器,这就是这个想法的产生方式。我阅读了很多关于拦截 api 调用以及调试器如何工作的文献,虽然我不能声称对所有涉及的概念有一个牢固的把握,但我有足够的能力来确定可能出现的一些问题,所以我想问你们的是以下:

  • 可行吗?我不确定一个资源有限的人是否有可能制作出比玩具更多的东西。我的背景:我是一名计算机科学专业的学生,​​具有 Java(在学校获得)、C++ 和 python(或多或少是自我思考)的经验。我最近接触了并行和分布式计算,我很喜欢它,所以我设法学到了很多。我对操作系统如何工作的知识相当薄弱(主要担心我开发这个项目的能力)

  • 是否可行。最好的开始方式是什么?我阅读了很多解释调试技术的文章和论文,但考虑到 MPI 调试器应该在多个进程上工作,可能在多台计算机上工作,并且每个进程都有单独的输出,我仍然不确定什么是最好的方法。他们。到目前为止,我的想法似乎很愚蠢。

  • 学习如何做。到目前为止,我无法确定什么是好的建议,什么是坏/过时的建议,所以如果你们知道任何好的文档/资源来开始这样的事情,我将不胜感激。

【问题讨论】:

  • 我认为这更像是程序员网站的问题:programmers.stackexchange.com
  • 我会去(事实上确实去)了一个光线追踪器。它本质上适合并行编程,因为您可以让大量工作人员查看框架的不同部分。

标签: java c++ parallel-processing distributed distributed-computing


【解决方案1】:

为什么不尝试演员模型?

下面是 C++ 中的一个实现: http://www.theron-library.com/

【讨论】:

    【解决方案2】:

    您可以查看实现Distributed Key Value 存储。这个来自伯克利分布式计算课程的project page 可以帮助您入门。它将涵盖

    的概念
    • 群体沟通与决策
    • 负载平衡
    • 容错
    • 分布式哈希

    您将对开发分布式算法/应用程序中的问题有第一手的感觉,下次您将阅读一些论文/算法时,这将有助于了解其中的细微细节。

    【讨论】:

      猜你喜欢
      • 2010-11-11
      • 2013-05-19
      • 1970-01-01
      • 2023-03-04
      • 2023-03-02
      • 1970-01-01
      • 1970-01-01
      • 2010-09-12
      • 2023-04-09
      相关资源
      最近更新 更多