我最近开始维护大量科学计算密集型FORTRAN代码.尽管有谷歌和两本入门级书籍,但我很难掌握四十年前语言的所有细微差别.代码充斥着"提升性能".有没有人有任何关于将FORTRAN 去优化到CS 101级别的指南或实用建议?有谁知道FORTRAN代码优化是如何运作的?是否有任何典型的FORTRAN'陷阱'可能不会发生在Java/C++/.NET引发的开发人员接管FORTRAN 77/90代码库?
我有一个应用程序,我们正试图从32位迁移到64位.它是.NET,使用x64标志编译.但是,我们有大量用FORTRAN编写的DLL编译为32位.FORTRAN DLL中的函数非常简单:将数据放入,将数据拉出; 没有任何状态.我们也不会花很多时间在那里,总共可能有3%,但它执行的计算逻辑非常宝贵.
我可以以某种方式从64位代码调用32位DLL吗?MSDN建议我不能,期间.我做了一些简单的黑客攻击并验证了这一点.一切都会引发无效的入口点异常.到目前为止,我发现的唯一可能的解决方案是为所有32位DLL函数创建COM +包装器,并从64位进程调用COM.这看起来很头疼.我们也可以在WoW仿真中运行这个过程,但是内存上限不会增加,大约1.6gb.
有没有其他方法从64位CLR进程调用32位DLL?
有没有办法在执行的MSBuild项目中列出所有已定义的变量?
我正在试图弄清楚究竟设置了哪些路径和变量(传入WiX),并且很难调试所有内容.从本质上讲,我希望set在命令行运行一些平等的东西.例:
C:\Users\dsokol>set
ALLUSERSPROFILE=C:\ProgramData
APPDATA=C:\Users\dsokol\AppData\Roaming
asl.log=Destination=file
CLASSPATH=.;C:\Program Files (x86)\QuickTime\QTSystem\QTJava.zip
CommonProgramFiles=C:\Program Files\Common Files
CommonProgramFiles(x86)=C:\Program Files (x86)\Common Files
...
Run Code Online (Sandbox Code Playgroud)
除了我希望它列出所有的MSBuild变量(例如Target,OutDir?,以及我在XML文件顶部定义的所有废话.理想情况下:
$(OutDir)="C:\MyOutDir\bin"
$(ProductVersion)="6.1.0"
$(Platform)="Win32"
Run Code Online (Sandbox Code Playgroud)
这样的事情存在吗?
我有一个Excel电子表格(由电子表格设备生成,但它更像是一个Excel问题),当我使用HLOOKUPS时,它没有像我期望的那样运行.我使用一个简单的HLOOKUP来查找表中给定百分比的值.对于两个特定值,HLOOKUP失败.这些值为0.9993和0.999.这篇excel文档演示了这个问题:http: //dsokol.com/tokio/excelna.xlsx.单元格C6和C7显示为N/A,当它们打算用B和C填充时.如果我重新键入值,则HLOOKUP再次开始工作.
谁能解释为什么会这样?
excel worksheet-function excel-formula spreadsheetgear excel-2010