我刚刚将一些NUnit测试项目从x86切换到AnyCPU,并开始使用nunit-console.exe而不是nunit-console-x86.exe在64位运行时运行它们.这使我的测试持续时间延长了大约50-100%.我可以在任何测试程序集上轻松地重复模拟它,甚至可以对测试运行进行分析,但是我无法弄清楚导致性能损失的原因,因为只有一切看起来在64位中表现得更慢.我还尝试在几台不同的机器上运行测试,结果相同.

测试程序集使用Spring.NET IOC和Oracle ODP托管提供程序(这是将测试从x86切换到AnyCPU的原因)以执行集成测试.测试运行的唯一区别实际上是32对64位环境或nunit可执行文件(nunit-console-x86.exe vs nunit-console.exe).

是否存在如此大的测试持续时间差异的一般原因?或者有没有人知道我应该检查什么来找出问题的原因?

跟进:

问题是由于本月8日发布的Oracle ODP.NET托管驱动程序(版本121010或4.121.1.0)引起的.它显然有many performance issues,其中一个是64位性能损失.在32位环境下运行以下代码时,持续时间约为0.6秒,在64位运行时运行时间约为1.5秒:

var sw = Stopwatch.StartNew();

using (var conn = new OracleConnection(ConnectionString))

{

conn.Open();

for (var i = 0; i < 100; i++)

{

using (var cmd = conn.CreateCommand())

{

cmd.CommandText = "select sysdate from dual";

var result = Convert.ToDateTime(cmd.ExecuteScalar());

}

}

}

Console.Out.WriteLine(sw.Elapsed);

现在是否有任何技巧如何从Oracle ODP.NET托管驱动程序中获得可接受的性能,或者即使Oracle声称它是“最终”版本,它是否还没有生产就绪?除了回到原生ODP.NET提供商之外,我还有其他选择吗?

oracle 速度最快 驱动,c# – Oracle ODP.NET托管驱动程序在64位运行速度比在32位运行速度慢50-100%...相关推荐

  1. 64位的电脑比32位的电脑跑的快么?「多图预警」

    前言 代码写了那么多,你知道 a = 1 + 2 这条代码是怎么被 CPU 执行的吗? 软件用了那么多,你知道软件的 32 位和 64 位之间的区别吗?再来 32 位的操作系统可以运行在 64 位的电 ...

  2. 32位算术逻辑运算单元alu设计_64位的电脑比32位的电脑跑的快么?多图预警

    前言 代码写了那么多,你知道 a = 1 + 2 这条代码是怎么被 CPU 执行的吗? 软件用了那么多,你知道软件的 32 位和 64 位之间的区别吗?再来 32 位的操作系统可以运行在 64 位的电 ...

  3. Windows64位环境下注册32位达梦odbc驱动

    64位应用程序只能调用64位odbc驱动:32位程序只能调用32位odbc驱动.位数不匹配会报错"在指定的DSN中,驱动程序和应用程序之间的体系结构不匹配". 方法一:直接安装32 ...

  4. 64位装32位oracle软件,在64位linux下安装32位oracle软件

    在某些情况下,有时我们需要在64位的系统下来安装32的oracle软件(如,客户的变态要求).虽然在理论上,这种方式是可行的,但在实际的安装过程中确往往是错误百出,为了避免不必要的错误,也为了方便以后 ...

  5. 64位电脑 装32位oracle,64位Windows可以安装32位的Oracle吗

    嘿服类 回答数:37  |  被采纳数:91 2017-04-21 07:22:43 64位的win7 完全可以安装32位的oracle. 安装方法如下: 首先,要解除oracle安装的windows ...

  6. win7 64位连接oracle11g,win7 64位系统下使用32位PLSQL连接64位Oracle 11g

    前提条件:已安装Oracle 11g 已安装32位PLSQL 需下载:instantclient-basic-win32-10.2.0.5(官网有,当然你也可以下载其他版本的) 一:将instantc ...

  7. oracle12c32下载,oracle 11g 32位|oracle11g客户端下载 32位 - 121下载站

    oracle11g是一款专业的oracle数据库管理软件,新版中增加了不少功能,同时提高了稳定性. oracle 11g 32位功能 1.oracle客户端的作用主要是为了远程访问oracle服务器用 ...

  8. oracle count最快的方法,Oracle count哪种写法更快

    1)创建测试表 test@CISCOSYS> create table t as select * from dba_objects; 表已创建. test@CISCOSYS> updat ...

  9. Oracle查询字段以外的内容,Oracle查询字段内容为非数字的记录

    今天在一张3W多记录的表里查非数字的异常数据~数据库太水,记录一发,因为2.5使用人员误输入为2..5.... select t.routecardlist_id,trim(translate(RTR ...

最新文章

  1. 链接2: excel中的截取文子串的功能------left,mid以及right函数使用
  2. GROMACS运行参数之em_real.mdp文件详解
  3. 24张GIF图,让你秒懂非标自动化机构的原理
  4. 当你所有的尝试告一段落
  5. Django(part34)--一对多映射
  6. 【渝粤教育】广东开放大学 会展营销 形成性考核 (56)
  7. java语言50到100之间素数和_用JAVA语言编写一程序,求100以内的所有素数
  8. 图灵测试是什么?为什么AlphaGo那么牛却过不了?
  9. 600分左右的计算机院校,600分左右的985大学 性价比最高的学校
  10. puml绘制思维导图_免费在线思维导图神器 简单又漂亮 比Wodrd好用很多
  11. Topaz Plugins Bundle 2018 for Mac(PS插件滤镜特效包)
  12. 飞信免费发短信API接口
  13. 讲真,只有low逼才热衷于打脸
  14. openslide read region 出现黑块 解决办法
  15. C语言五子棋--人机对弈--人人对弈
  16. 2018云原生技术实践峰会CNBPS 重新定义云原生
  17. 使用Html/Css简单创建一个菜单
  18. CentOS 8.5 NVIDIA驱动卸载
  19. 这可是全网EVE安装最完整,最详细的图解,没有之一【安装图解】
  20. ArcGIS API For Javascript之调用动态地图服务+属性、空间查询

热门文章

  1. 小学百分数思维导图怎么画?这样制作不出错
  2. unity三维云图_unity3d 温度云图shader
  3. Github Emojis API
  4. python开发mbus程序_基于MBUS标准协议采集水、热、气表的方法与流程
  5. Unity 可视化脚本 Bolt插件 使用评测
  6. BGP联邦和团体的配置
  7. ElasticSearch的可视化应用 ElasticHD
  8. python自动化办公能做什么-新课介绍 | 用Python自动办公,做职场高手
  9. 购计算机软件,计算机软件购销合同
  10. ArcGIS Pro3.0.2安装教程