我正在做模拟,生成数千个结果对象.每个对象的大小约为1mb,所有结果对象应存储在内存中以查询各种临时报告.制作一个结果对象需要1到2秒.因此,即使我将我的四核CPU完全用于并行执行,也要花费5分钟以上的时间才能完成一...

我正在做模拟,生成数千个结果对象.
每个对象的大小约为1mb,所有结果对象应存储在内存中以查询各种临时报告.制作一个结果对象需要1到2秒.
因此,即使我将我的四核CPU完全用于并行执行,也要花费5分钟以上的时间才能完成一次仿真.一个仿真集的任务过程需要占用4?5 GB以上的内存.问题是,我想同时运行更多的仿真集并更快地完成它.
目前,我正在Windows vista64(具有8g内存的四核cpu)上使用c#和ironpython来完成此工作.我要订购一台新计算机,具有更好的CPU的24 GB内存,最终,我可能会购买具有多CPU和更多内存的工作站.
所以我的问题是,利用新硬件的最佳方法是什么?
我考虑以下组合之一.
> Windows 64上的IronPython C#
> Linux 64上的ironpython c#(mono)
> Windows 64上的Jython Java
> Linux 64上的jython java
模拟引擎是用C#/ Java编写的,我使用python进行报告.
你们认为哪种组合最好?
.net和Java平台之间处理内存消耗任务没有太大区别吗?
Windows和Linux之间没有区别吗?
有时我会在ubuntu笔记本电脑(32位,2g内存)上运行当前的c#ironpython代码,并觉得与同规格硬件上的Windows .net env相比,它似乎很稳定.但是我不知道什么时候底层硬件会更好.
无论上述选择如何,我都欢迎任何建议.
解决方法:
由于您可以免费安装所有这些程序,并且听起来您已经在.Net和Java中实现了代码,因此我建议您在所有四个平台(windows / linux * java / .net)上对该程序进行基准测试.
听起来所有繁重的工作都是在Java / C#中完成的,所以我怀疑Jython与IronPython的相对性能在很大程度上无关紧要.
本文标题为:c#-用于CPU /内存密集型任务的最佳(python)设置


基础教程推荐
- 详解pandas df.iloc[]的典型用法 2022-08-30
- 用10分钟,搭建图像处理编程环境,0失败!(python语言,windows系统) 2023-09-05
- Windows下用PowerShell激活Python的虚拟环境 2023-09-04
- python中list列表删除元素的四种方法实例 2022-10-20
- python-Shell脚本的Zip函数 2023-11-10
- 【转】新装的CentOS 7安装python3 2023-09-03
- Python中的getattr,__getattr__,__getattribute__和__get__详解 2023-08-09
- 远程和Ubuntu服务器进行Socket通信,使用python和C#(准备篇) 2023-09-05
- python机器学习Github已达8.9Kstars模型解释器LIME 2023-08-09
- Python实现Gif图片分解的示例代码 2022-08-30