画动画圆之使用 QT4.6/C#/MFC/DELPHI/VB 开发的程序性能测试报告

10 篇文章 0 订阅
9 篇文章 0 订阅

测试目标,绘制动画的速度,性能,资源耗用

 

 

各种测试程序可以从下面下载

http://download.csdn.net/source/2089751  Qt4.6(无runtime)

http://download.csdn.net/source/2089762  MFC(无runtime) VS2008

http://download.csdn.net/source/2089758  C#(无runtime) 注意:C#的优化方法有点多,使用GDI,使用unsafe,都可以.unsafe的方法研究中...期望能向

MFC靠拢.

http://download.csdn.net/source/2621911 DELPHI 使用DDB

http://download.csdn.net/source/2621907 DELPHI 未使用DDB

SDK

C# API

其他源码随后附上
测试内存位图大小都是 1280*768 像素的矩阵面积
NameQtC#MFCDELPHIVB5C#(API)win32 SDKBorlandC++
CPU50% 50%24%50%30-40%25%28%28%
内存12MB25MB 6MB6MB12MB12MB7MB5MB
帧数fps92 2058-6240406258-6264
备注相当恐怖的帧数,只能说图形函数缓冲算法优化的好,相当赞

使用GDI+

托管环境

使用BitBlt+GetClientRect做DBB使用Canvas
未测试WINAPI方式
■picturebox方式帧数只有10(未使用DBB)
■WINAPI直接画20帧左右(未使用DBB)
■使用DBB可以实现最高性能.帧数40
使用WINAPI之后速度猛增,超过VB(API)方式.和MFC/SDK方式持平和MFC差不多,但是略微还慢那么一点点和win32SDK相同.但是文件大小很大400K+
打包的EXE程序提供下载,自己行在自己电脑上对比速度 http://download.csdn.net/source/2630603
以上代码都是采用DBB双缓冲方式测试.都在win32平台运行,其中基于qt开发的程序尚未在linux上编译测试.
qt 优势,跨平台,性能难度平衡的不错;缺点:运行速度需要提升.
C# 优势,开发速度快;缺点:慢,庞大,臃肿.
MFC,优势,运行速度一流,内存占用小.缺点,开发较复杂
DELPHI给我的感觉是速度仅次于MFC和QT
VB在调用API之后速度猛升,仅次于DELPHI
SDK的不作讨论,MFC接近之.
综上调用API之后都差不多的速度....但是CPU占用是不同的.以此可以看出"胶合层"的厚度.
最后排名
sdk(理论上,呵呵无敌的)
qt(这家伙底层貌似用了多核技术,帧数最高)
mfc(多核支持啊...多核支持...)
delphi
vb
C#
帧数计算采用单独的timer,因此不影响fps.
 
由此可以看出3个知识点:
1,C#,美式风格,忽悠民众,优势不在于开发超stable型的应用程序,只能说强化了GC类产品的概念,个人觉得很不错,上升空间明显.
   C,依然是龙头老大,中国院校很重视C,基础教育,很好,请坚持.
   qt,欧式开发典范,非常个性,眼光独到.希望引擎方面再做优化,毕竟对于一款跨平台产品,相比是最好的了.
   delphi和vb没研究过历史
 
2,芬兰,欧洲风格,包括欧盟和前苏联范畴,喜欢创新,不喜欢垄断,眼光独特,重视理论研究.但是"人性化"方面是其弱点,商业性方面也是其弱点;相反,美帝国主义就商业运作(怎么样卖钱,性能其次次..),拉拢万千少女程序员(界面华丽,上手容易,简单)很在行,但是运行速度太慢;
 
3,C是China的第一个字母,所以,没话说!;J是Japan的第一个字母,日本用Java的多啊,这里说说日本,日本开发界的风格是和以上的都不同,"研发"很少,"拿来"很成气候,关键是会挑,所开发产品具有很强的针对性,或者说具有"夺标性"的软件很多,平台不限,所有的开发,都是基于需求,严格按照需求执行开发语言的选择...回朔到二战时期,"零式战斗机","Ki-84"这些,都是基于某方面的变态追求而问世,比如"零战",水平盘旋很厉害,KI84的火力非常的猛,但是顾头就顾不到尾,这些名机,都是纸飞机,中弹必解体.其实日本人很多领域都是这样的行事态度,因此对付的办法就是抓住他们的弱点,打之,必胜!...唉.扯远了.
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

AKULAKK

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值