请教个问题,oracle最多能够用多少core?
最近在测试一批服务器,各个厂家都有,os版本RHEL6.4 数据库oracle 10.2.0.5。在测试过程中发现,oracle在4路上的表现不错,可以用到所有的核,在8路上无法用到所有的核。当核数到100作业或者超过100的时候,oracle就无法使用所有的核了,而且负载分担也不是很均衡。通过numactl或者taskset也无法绑定到所有的核,不止是否是oracle代码的问题?恰好最近一个朋友在测试mysql,mysql是可以用到80个cpu的而且跑的很均衡,不像oracle无法用到后面的core,就算是用到的也会有些压力分配不均衡。所以感觉应该不是os问题。剩下的就只能怀疑oracle的代码并行度不是很好了。但是这样的话无从考察,没有数据证明。所以来这里请教一下,是否有了解oracle对x86cpu的并行支持是怎样的? oracle在unix/linux上一直是多进程的, 在12c前都没有多线程概念。对于Oracle而言 一个进程尽可能在一个CPU上运行是好事情,而不会为了负载均衡 而让一个进程运行在多个CPU上,因为那会引起额外的上下文交换文本,你指出的这个问题 似乎正好是Oracle的优点,而不是缺点。
页:
[1]