C+中的高性能计算资源+; 我正在寻找书籍或在线资源,详细地讲述了使用C++的高性能计算编程技术。 < P>。它是一个模板和对象库,用于C++中的高性能应用。它在线程、网络等方面具有强大的跨平台原语。

C+中的高性能计算资源+; 我正在寻找书籍或在线资源,详细地讲述了使用C++的高性能计算编程技术。 < P>。它是一个模板和对象库,用于C++中的高性能应用。它在线程、网络等方面具有强大的跨平台原语。,c++,performance,C++,Performance,首先要了解的可能是HPC节点互连中的事实标准。实际上,我听说的所有HPC代码都是用于求解线性方程组或FFT的。以下是一些链接,至少在所使用的库中提供: -线性代数的标准例程集-矩阵乘法之类的东西 -高级线性代数例程的标准集-类似LU decomp的东西 -优化BLAS实施 -优化FFT实现 -用于分布式处理器的BLAS -分布式LAPACK实现 -分布式系统的通信库 -可扩展的非线性和线性解算器(用户可扩展,接口更高) 这套库和包为HPC提供了广泛的中间件库,包括稀疏、迭代线性解算器;非线性求

首先要了解的可能是HPC节点互连中的事实标准。

实际上,我听说的所有HPC代码都是用于求解线性方程组或FFT的。以下是一些链接,至少在所使用的库中提供:

  • -线性代数的标准例程集-矩阵乘法之类的东西
  • -高级线性代数例程的标准集-类似LU decomp的东西
  • -优化BLAS实施
  • -优化FFT实现
  • -用于分布式处理器的BLAS
  • -分布式LAPACK实现
  • -分布式系统的通信库
  • -可扩展的非线性和线性解算器(用户可扩展,接口更高)

这套库和包为HPC提供了广泛的中间件库,包括稀疏、迭代线性解算器;非线性求解器;特征解算器;ODE和DAE集成商,包括敏感性分析;优化(侵入式和黑匣子式);有限元界面;网状界面;预处理程序;所有这些包都是使用相当现代的C++技术设计的(Python API和一些C和FORTRAN)。在非常大规模(5000+CPU)的异常后果(核武器设计)模拟中使用了这些技术,并取得了巨大成功。这些软件包提供了一套比BLA等更高的能力,尽管

< P>尽管已经有14年的历史了,但它的创举仍然被认为是近年来最杰出的C++工作之一。快速、高效、安全。。。我用过这些技巧,它们真的很了不起

编辑:
如果上面的链接仍然断开,下面是一个示例。这篇DDJ文章引用了Veldhuizen的原著。

即使不是FOSS,如果您需要执行这些库支持的任何操作(例如:信号处理、图像处理、矩阵数学),Intel和库确实可以为您节省大量时间(在开发和运行时)。当然,这取决于你的平台是否能从中受益


(不:我不为英特尔工作,但我是他们的一个快乐客户。)

无论你写什么,无论你从一开始就为性能设计了多少,都有可能从性能调整中获益。通常,项目规模越大,受益就越多。这是一种简单、有效的调优方法。它基于“深度采样”,这是一种在不强调测量的同时提高诊断准确性的技术


您还可以查看查看。api非常优雅,生成的程序非常快速(由于SSE2架构的显式矢量化)

高可扩展性-构建更大、更快、更可靠的网站

而且:


< /P>你是指大服务器中的高处理吞吐量,还是减少小型(PC或更小)机器的资源消耗?你可能想考虑这一点,谢谢汤姆。希望DDJ文章能有所帮助。链接在存档中: