In case Flash no longer exists; a copy of this site is included in the Flashpoint archive's "ultimate" collection.

Dead Code Preservation :: Archived AS3 works from wonderfl.net

Easy Benchmark

簡易ベンチマークです。
ランダムな速度で動くボールを毎フレームごとに100個ずつ追加していき、
直近10秒の平均fpsが30以下になった時点のボールの数をスコアとします。
スコアが出るまで少し時間がかかります。
ちょっと待ってね just a moment!
Get Adobe Flash player
by ton 03 Mar 2010
  • Related works: 4
  • Talk

    ton at 03 Mar 2010 05:40
    自分はwin7 x64, core i7 860, FP10.0.45の環境でSCORE : 286800 でした
    clockmaker at 03 Mar 2010 07:02
    自分はMacOSX 10.6、Core2Duo 2.0GHz、メモリ4Gで以下の結果でした。 FP 10.1 beta3(リリース版)だとScore:147600 FP 10.1 beta3(デバッグ版)だとScore:95600 FP10.0.45だと 65900 (※Safari 64bit起動)
    keim_at_Si at 03 Mar 2010 20:03
    ローレベルターゲットのご参考に.ネットブック(winXP, Atom Z520,現在のメイン開発環境). FP 10.1 beta3(リリース):47300(FF) 45000(IE)
    clockmaker at 19 Apr 2010 08:30
    Macを新調したので再掲載。MacOSX 10.6、Core i7 2.66GHz、メモリ8Gで以下の結果でした。 FP 10.1 RC(リリース版)だとScore:240500
    xxxYukihiroxxx at 19 Apr 2010 08:37
    Win7 64bit PL 10,0,45,2 Core2Duo 3.16GHz、Mem4GでSCORE : 262200 でした。
    ton at 04 Jun 2010 04:02
    FP10.1.53.64 SCORE : 321000
    nariyu at 11 Jun 2010 09:18
    MBP i7 2.66GHz, MEM 8GB, OS X 10.6 FP 10.1.53.64 デバッグ版 SCORE: 176800 FP 10.1.53.64 リリース版 SCORE: 250000
    xxxYukihiroxxx at 20 Jun 2010 06:04
    Win7 64bit FP WIN 10,1,53,64 Core2Duo 3.16GHz、Mem4GでSCORE : 312100 でした。
    clockmaker at 24 Jul 2010 15:43
    スマートフォン(Google Nexus One - Android 2.2)の Flash Player 10.1 にて SCORE : 33700 でした。
    ton at 16 Sep 2010 03:33
    FP"Square"Preview1, IE8 64bit, Win7 64bit Easy Benchmark SCORE : 348300 FP10,1,82,76 IE8 32bit, Win7 64bit Easy Benchmark SCORE : 301700 FP"Square"Preview1, IE8 32bit, Win7 64bit Easy Benchmark SCORE : 306300 FP"Square"Preview1はバージョン10,2,161,22
    clockmaker at 27 Oct 2010 21:23
    Android タブレットの「Galaxy Tab」では 20800でした。http://yfrog.com/07fw6uj
    ton at 01 Dec 2010 04:29
    FP10,2,151,49 SCORE : 266600
    makc3d at 01 Dec 2010 04:46
    atom cpu hp mini 45500
    zob at 02 Dec 2010 10:28
    Q6600 2.6hz 83800
    clockmaker at 05 Dec 2010 05:51
    Atom CPU 1.6GHz (VAIO X) 49200 (Windows 7/Flash Player 10,1 Release)
    ton at 05 Dec 2010 17:52
    FP10.2Beta1 IE9x86 SCORE : 294200 FP"Square"Preview3 IE9x64 SCORE : 338000 FP"Square"Preview3はバージョン10,3,162,28
    ton at 28 May 2011 20:29
    MBP Mac OS X i5 2.3GHz Mem 4GB GoogleChrome FP10.3.181.14 Easy Benchmark SCORE : 236100
    ton at 14 Jul 2011 06:31
    FP11 Beta1 (11.0.1.60) IE9 64bit SCORE : 347800 IE9 32bit SCORE : 308800 Chrome 32bit SCORE : 269500
    clockmaker at 26 Jul 2011 08:39
    MacBook Air 13inch - Mac OS X 10.7 - Intel Core i7 1.8GHz - メモリ4G - グラフィックス Intel HD Graphics 3000 384 MB FP 10.2 (リリース版) - Score:232500
    clockmaker at 01 Sep 2011 17:15
    MacOSX 10.7、Core i7 2.66GHz、メモリ8Gで以下の結果でした。 FP 11 Beta 2 64bit(リリース版)だとScore:323900
    ton at 07 Sep 2011 08:05
    Chrome FP 11.0.1.129 64bit SCORE : 280500
    mousepancyo at 04 Oct 2011 06:49
    MBA'13 2011 Core i7 1.8GHz RAM 4GB Safari FP11.0.1.152 SCORE : 340300
    ton at 04 Oct 2011 12:56
    FP11.0.1.152 MBP MacOSX 10.7 i5 2.3GHz Mem4GB Chrome14 SCORE : 264500 Safari5.1 SCORE : 332100 Win7 x64, core i7 860 Mem8GB IE9 32bit SCORE : 318800 IE9 64bit SCORE : 371300 Chrome14 32bit SCORE : 280500 Safari5.1 32bit SCORE : 320100 FF7 32bit SCORE : 279300
    yonatan at 05 Oct 2011 04:09
    FP 11,0,1,152 (64-bit), Linux, Intel Q9300 @ 2.5GHz, firefox 3.6, SCORE: 194300
    djankey at 05 Oct 2011 06:50
    FP 11.0.1.152, Windows7 32bit, Core2Duo 2.4GHz, Chrome 14 > SCORE: 221700
    okoi at 25 May 2012 21:17
    FP 11,2,202,235, Window7 64bit Core i7 2700k 3.50GHz Chrome 19 > Score 399400
    alumican_net at 25 May 2012 21:19
    FP11.2.202.235, MBP Windows7 64bit, Core i7 2.3GHz, RAM 8G, Google Chrome 19, SCORE: 344500
    ProjectNya at 25 May 2012 21:26
    MacBook Pro 13inch 2.7GHz Intel Core i7 MacOSX 10.6.8 Safari 5.1.7, FP 11.0.2.202.235 (debug) SCORE: 248300
    ton at 27 Jun 2012 18:34
    FP 11.3.31.109 Linux Mint 13 64bit Corei7 2700k Google Chrome 20 SCORE : 534000 戦闘力53万・・・! ゴゴゴゴゴ
    ton at 09 Aug 2012 17:33
    Win7 64bit Google Chrome 21 PPAPI 11.3.31.222 SCORE : 361800 NPAPI 11.3.300.268 SCORE : 278200
    makc3d at 10 Aug 2012 15:17
    137800 for acer aspire 1825PTZ
    Hasufel at 19 Aug 2012 22:33
    422800 FP 11.3.300.271 FF 14.0.1 mbp 13" i7 2.9ghz
    karen at 19 Feb 2013 07:11
    XP SP3 IE8 動かない FIREFOX 18 1800 CHROME 24 94400
    makc3d at 20 Feb 2013 01:00
    215000 on mbp 17" 2.93 (chrome pepper)
    yonatan at 20 Feb 2013 02:19
    crashes on LNX 11,5,31,135 (chrome pepper). it's probably the japanese characters in the code. whole lot of codes on wonderfl crash here... flash on linux is going the way of the dodo.
    WLAD at 27 Jun 2013 04:27
    BROWSER: SCORE: 243500 Chrome - FP 11.7.700.255 - very smooth SCORE: 250500 IE 10 - FP 11.6.602.180 - the PC was unusable when score was 200000 and above - the av FPS showed 30+ but it felt like 2-5 FPS. PC: Acer Aspire 4741 Core i5 - M430 @ 2.27GHz 2.27GHz RAM: 4GB OS: Win7 64-bit
    ABCDEF123456 at 11 Oct 2013 11:57
    Corei3 3110M 2.4GHz Firefox FP11.9 280000程度 自分の環境ではページを表示する大きさ(Ctrl+、Ctrl-)でスコアが大きく変わりました。最大のサイズにするとわずか2900、最少にすると300000になりました。
    okoi at 11 Oct 2013 13:12
    会社PC Windows7 Core i7-3770 3.40GHz FP 11.9.900.117 Chrome30 Score 404200
    clockmaker at 20 Mar 2014 12:11
    iMac 27-inch, Late 2013 - Mac OS X 10.9 - 3.5 GHz Intel Core i7 - 32 GB 1600 MHz DDR3 - NVIDIA GeForce GTX 780M 4096 MB FP 12 (リリース版) : SCORE 410900

    Tags

    Embed
/*
簡易ベンチマークです。
ランダムな速度で動くボールを毎フレームごとに100個ずつ追加していき、
直近10秒の平均fpsが30以下になった時点のボールの数をスコアとします。
スコアが出るまで少し時間がかかります。
ちょっと待ってね just a moment!
*/
package {
	import flash.display.Bitmap;
	import flash.display.BitmapData;
	import flash.display.Sprite;
	import flash.events.Event;
	import flash.events.MouseEvent;
	import flash.net.navigateToURL;
	import flash.net.URLRequest;
	import flash.text.TextField;
	import flash.utils.getTimer;
	[SWF(frameRate=240)]
	public class EasyBenchmark extends Sprite {
		private const W:int = 465;
		private const H:int = 465;
		private const MAX_V:int = 10;
		private const MIN_V:int = 3;
		
		private var balls:/*Ball*/Array = [];
		private var frameRates:/*int*/Array = [];
		private var index:int = 0;
		private var ave:int = 120;
		
		private var ballCnt:int = 0;
		private var txtBallCnt:TextField;
		
		private var frameCnt:int = 0;
		private var txtFrameCnt:TextField;
		private var oldTimer:int;
		
		private var bmd:BitmapData;
		private var bmp:Bitmap;
		
		public function EasyBenchmark():void {	
			bmd = new BitmapData(W, H, false);
			bmp = new Bitmap(bmd);
			addChild(bmp);
			
			txtBallCnt = new TextField();
			txtBallCnt.autoSize = "left";
			txtBallCnt.background = true;
			addChild(txtBallCnt);
			
			txtFrameCnt = new TextField();
			txtFrameCnt.autoSize = "left";
			txtFrameCnt.background = true;
			txtFrameCnt.y = 30;
			addChild(txtFrameCnt);
			
			oldTimer = getTimer();			
			addEventListener(Event.ENTER_FRAME, update);
		}
		
		private function update(e:Event):void {
			updateFrame();
			if (ave <= 30) {
				removeEventListener(Event.ENTER_FRAME, update);
				complete();
				return;
			}
			
			for (var i:int = 0; i < 100; i++){
				var ball:Ball = new Ball(randomRange(MAX_V, MIN_V), randomRange(MAX_V, MIN_V));
				ball.x = Math.random() * W;
				ball.y = Math.random() * H;
				balls.push(ball);
				ballCnt++;
			}
			txtBallCnt.text = "score : " + ballCnt;
			
			bmd.fillRect(bmd.rect, 0xffffff);
			for each(ball in  balls) {
				ball.x += ball.vx;
				ball.y += ball.vy;
				bmd.setPixel(ball.x, ball.y, 0xff0000);
				if (ball.x <= 0 || ball.x >= W) {
					ball.vx *= -1;
				}
				if (ball.y <= 0 || ball.y >= H) {
					ball.vy *= -1;
				}
			}
		}
		
		private function complete():void{
			var tf:TextField = new TextField();
			tf.autoSize = "left";
			tf.text = "YOUR SCORE : " + ballCnt;
			tf.scaleX = tf.scaleY = 3;
			tf.x = W / 2 - tf.width / 2;
			tf.y = H / 2 - tf.height;
			addChild(tf);
			
			var button:TextField = new TextField();
			button.background = true;
			button.backgroundColor = 0xcccccc;
			button.autoSize = "left";
			button.selectable = false;
			button.text = "twitterに投稿";
			button.scaleX = button.scaleY = 2;
			button.x = W / 2 - button.width / 2;
			button.y = H / 2;
			button.addEventListener(MouseEvent.CLICK, function():void {
				navigateToURL(new URLRequest("http://twitter.com/?status=Easy Benchmark SCORE : "+ballCnt+" http://bit.ly/a6B5Er %23wonderfl"));
			});
			addChild(button);
			
		}
		
		private function updateFrame():void {
			frameCnt++;
			if (getTimer() - oldTimer >= 1000) {
				frameRates[index] = frameCnt;
				index = ++index % 10;
				ave = average.apply(null, frameRates);
				txtFrameCnt.text = "fps : " + frameCnt + "/" + stage.frameRate + "\nave : " + ave;
				frameCnt = 0;
				oldTimer = getTimer();
			}			
		}
		
		private function average(... rest):Number {
			var sum:Number = 0;
			for each(var n:Number in rest) sum += n;
			return sum / rest.length;
		}
		
		private function randomRange(max:Number, min:Number):Number {
			return Math.random()*(max - min) + min;
		}
		
	}
	
}

class Ball {
	public var x:Number;
	public var y:Number;
	public var vx:Number;
	public var vy:Number;
	
	public function Ball(vx:Number, vy:Number) {
		this.vx = vx;
		this.vy = vy;
	}
}