在OS提供的API基础上编程,多核和单核的区别能感觉到吗?

leonatcs 2006-06-21 06:04:50
如题,比如windows系统,只要windows API利用双核的优势,是否能对其上层做到透明?在API基础上写的程序又怎样利用双核的优势?最好有个例子。
...全文
582 9 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
celineshi 2006-07-05
  • 打赏
  • 举报
回复
to:leonatcs
这取决于API是几个任务还是并行运算
jtg98g3 2006-06-26
  • 打赏
  • 举报
回复
一:别人封装好了的通用的东西,总是消耗更多的资源!量身定做的设计。提升性能方面比用通用的东西提升性能会有更多的机会!
比如我要将时间转换成hh:mm:ss.sss 而且这个操作在几十个亿以上,如果在delphi中我用格式化函数formatdatetime(具体函数名不太确认,就是那种输入一个格式化字符串和时间得到一个字符串通用函数)来做跟我专门做一个函数来处理这种情况要慢很多!
举这个例子是为了说明通用的东西比量身定做的东西在提升性能上要丢失好多机会!
二:如果我们编程的时候能感应到双核并由我们自己去设计的话那就更好了,前提是你的技术实力要够强大。
三:也许windows会有两种方式给我们,一种是在操作系统上使用双核,就像我们现在windows上使用彩色显卡一样,比如我现在使用image贴一张图片(这个应该可以理解吧),我只管输送数据,对于具体怎么画就有驱动程序来完成了。
另一种方式,直接使用底层的,不做封装。就像驱动编程。如果你直接使用显卡的硬件资源来贴一张图片。那一种更快!哪一种更适合你!就看你的实力和你需求了!
os提供的api的基础编程,会不会分别提供多核和单核的api呢?那就要看os的厂家了!
四:我觉的多核的cpu,更适合那种实时要求高的场合。一个单核的cpu,不管频率有多高,在做并行任务的时候依然不是真实的并行,任务与任务之间依然存在先后之分。
五:大家懂英语的请多多翻译一些文章。多谢多谢!
DentistryDoctor 2006-06-26
  • 打赏
  • 举报
回复
应该说多线程的程序比起单线程的程序,在多数情况下,在多核心的机器上会有性能提升。但提升绝对不会是100%,也许是30%,也许是其它数字,看具体应用了。
lisypro 2006-06-22
  • 打赏
  • 举报
回复
多线程才有优抛罢
lotuis 2006-06-22
  • 打赏
  • 举报
回复
这个得看运行程序的强度了,强度大的话自然能体现出来多核的调度优势,如果是诸如Hello World之类的,那肯定看不出来,除了使用编译器的时候,可能会觉得编译时间的些许提高.
OnlyFor_love 2006-06-22
  • 打赏
  • 举报
回复
速度上应该会提高一倍 呵呵
fangzhe 2006-06-22
  • 打赏
  • 举报
回复
一般的API都是单线程的,尤其是UI部分
但是比如网络/文件操作等,系统实现的好就会有很大的提高
自己的算法需要并行化才可以提高效能,比如利用OpenMP
alaiyeshi 2006-06-22
  • 打赏
  • 举报
回复
速度不会线性的提高

最多是最高承载压力变大了
lnwuyaowei 2006-06-21
  • 打赏
  • 举报
回复

567

社区成员

发帖
与我相关
我的任务
社区描述
英特尔® 边缘计算,聚焦于边缘计算、AI、IoT等领域,为开发者提供丰富的开发资源、创新技术、解决方案与行业活动。
社区管理员
  • 英特尔技术社区
  • shere_lin
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧