24小时热门版块排行榜    

查看: 2624  |  回复: 18

wopyhj

新虫 (初入文坛)

[交流] 第一性原理计算软件开发已有5人参与

大规模并行第一性原理计算软件开发!走起!
回复此楼

» 本帖已获得的红花(最新10朵)

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

计算软件架构师;计算软件开发工程师;c/c++; Linux;第一性原理;分子动力学
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
回帖支持 ( 显示支持度最高的前 50 名 )

wenjlu

木虫 (正式写手)


小木虫: 金币+0.5, 给个红包,谢谢回帖
我们已筹划了多时了,目前正在准备开发,有机会合作啊。
2楼2014-03-23 18:28:19
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

liqizuiyang

木虫 (著名写手)


小木虫: 金币+0.5, 给个红包,谢谢回帖
引用回帖:
13楼: Originally posted by wopyhj at 2014-03-29 19:00:05
From google: From my 15 years of thinking about scientific software: If your code runs 25% faster because you write it in Fortran, but it takes you 4 times as long to write it (no STL, difficulty im ...

程序运行快慢和编译器优化能力有关。若说到和语言的关系,fortran语法简单,可能更利于编译器优化。

有关用fortran开发时间长短的,楼主可以试下用C++写下这个例子:

科学计算涉及设定参数默认值及从输入文件中读取设定的值。设某程序运行共需要bar_1到bar_7 7个参数,这7个参数中,bar_1到bar_3为整型,bar_4到bar_5为浮点型,bar_6和bar_7为字符串。编写一程序,要求在程序开始为bar_1 - bar_10设定好默认值,然后读取input.in,若input.in中给出了某参数的设定值,则读取设定值;否则保持默认值。input.in中各参数可以以任意次序排列。

这个程序用fortran的namelist机制非常简单,不借助第三方库就能实现。

有关fortran自定义数据类型和面向对象设计的,可以看下Stephen J. Chapman编写的《Fortran 95/2003程序设计》(中国电力出版社)。

C/C++是通用型语言,而Fortran是专为科学计算设计的,有许多针对科学计算问题的特性。C语言问世于上世纪七十年代初,而许多晚于它的第一性原理程序却仍以Fortran编写,比如80年代末的VASP,2000年的abinit和2003年的pwscf。

当然,大的软件项目不同于百十行的小程序。既然决定了用C++,肯定有充分的原因。鄙人在这里班门弄斧了。
14楼2014-03-29 20:34:44
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
普通回帖

qq364085265

金虫 (著名写手)

3楼2014-03-24 14:05:05
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

wopyhj

新虫 (初入文坛)

引用回帖:
2楼: Originally posted by wenjlu at 2014-03-23 18:28:19
我们已筹划了多时了,目前正在准备开发,有机会合作啊。

需要学很多东西啊,我正在看书和文献。编程我要用c++,可能傅里叶变换等核心计算的部分我会写一份汇编的,对比效率。
计算软件架构师;计算软件开发工程师;c/c++; Linux;第一性原理;分子动力学
4楼2014-03-25 20:47:45
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

wopyhj

新虫 (初入文坛)

引用回帖:
2楼: Originally posted by wenjlu at 2014-03-23 18:28:19
我们已筹划了多时了,目前正在准备开发,有机会合作啊。

加油!
计算软件架构师;计算软件开发工程师;c/c++; Linux;第一性原理;分子动力学
5楼2014-03-25 20:54:31
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

dyc_2008

捐助贵宾 (著名写手)


小木虫: 金币+0.5, 给个红包,谢谢回帖
力顶

同时弱问,偃势文件基于什么来构建?还是直接用已有的偃势文件,比如VASP中那些?
一布福田,二修菩提
6楼2014-03-26 14:18:17
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

dyc_2008

捐助贵宾 (著名写手)

引用回帖:
4楼: Originally posted by wopyhj at 2014-03-25 20:47:45
需要学很多东西啊,我正在看书和文献。编程我要用c++,可能傅里叶变换等核心计算的部分我会写一份汇编的,对比效率。...

傅立叶变换不是有数学库吗,干嘛还要自己写
难道为了削出与众不同的苹果,非要自己打造一把水果刀
一布福田,二修菩提
7楼2014-03-26 14:19:59
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

wopyhj

新虫 (初入文坛)

引用回帖:
7楼: Originally posted by dyc_2008 at 2014-03-26 14:19:59
傅立叶变换不是有数学库吗,干嘛还要自己写
难道为了削出与众不同的苹果,非要自己打造一把水果刀...

针对不同架构的编译器编译后的效率会不同,比如arm与intel,还有就是GPU, 前段时间我听说一个人用汇编写了照相软件,比一般的软件快了6,7倍。我不晓得这个计算用这个会不会快。还有就是很关键的一个问题,并行效率的问题,有个搞Linux的哥们提出,用独立进程处理节点间通信的方法。有人比较过hadoop与mpi的效率,各有千秋。这些都还没经验,需要试验和查阅资料。
计算软件架构师;计算软件开发工程师;c/c++; Linux;第一性原理;分子动力学
8楼2014-03-28 15:45:37
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

wopyhj

新虫 (初入文坛)

引用回帖:
6楼: Originally posted by dyc_2008 at 2014-03-26 14:18:17
力顶

同时弱问,偃势文件基于什么来构建?还是直接用已有的偃势文件,比如VASP中那些?

不关心物理方面的问题,只关心软件工程方面,利用已知的东西把它工程化,不搞研究。
计算软件架构师;计算软件开发工程师;c/c++; Linux;第一性原理;分子动力学
9楼2014-03-28 15:46:48
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

wopyhj

新虫 (初入文坛)

引用回帖:
7楼: Originally posted by dyc_2008 at 2014-03-26 14:19:59
傅立叶变换不是有数学库吗,干嘛还要自己写
难道为了削出与众不同的苹果,非要自己打造一把水果刀...

再高的效率问题涉及到操作系统的内核了,不是一般的人所能搞定的,这个慢慢研究。
计算软件架构师;计算软件开发工程师;c/c++; Linux;第一性原理;分子动力学
10楼2014-03-28 15:51:25
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 wopyhj 的主题更新
普通表情 高级回复(可上传附件)
信息提示
请填处理意见