使用Julia集测试计算机性能

性能

  好久没来了,这次给大家带来一点东东。

  大家都知道Julia集是一种迭代算法,即不断将运算所得结果再投入算法计算,使得结果不断接近真实值

  例如我们计算π,e都是用这个算法。

  Julia集有很多形式,都需要消耗大量资源才能得出结果。而我们可以使用这个算法测试计算机性能。

  因为使用BitmapData支持,所以请使用FlashPlayer8.0播放。

/**
   ActionScript Source File -- Created with SAPIEN Technologies PrimalScript 3.1
   
   @class  Test.as
   @package
   @author tcper@163.com Loki_tang
   @codehint 
   @example: import Test;
var someObject:Test=new Test;
someObject.tester(.01);
   @tooltip 
*/
import flash.display.BitmapData;
class Test extends MovieClip {
 private var n:Number;
 private var cx:Number;
 private var cy:Number;
 private var x2:Number;
 private var y2:Number;
 private var rgb:Number;
 private var timeGot:Number;
 private var rgbOffset:Number;
 private var pixelPos:Number;
 private var mc:MovieClip;
 private var mcOrigin:MovieClip;
 private var myBitmapData:BitmapData;
 //a,b都是Julia集的参数
 private static var a:Number = .5;
 private static var b:Number = .55;
 private static var pixelNum:Number = 0;
 private static var timeLimitation:Number = 4000;//计算时间限制
 function Test() {
  bitmapCreator();
 }
 private function bitmapCreator():BitmapData {
  myBitmapData = new BitmapData(400, 400, false, 0xcccccccc);
  return myBitmapData;
 }
 private function mcCreator():MovieClip {
  mcOrigin = this.createEmptyMovieClip("mc", this.getNextHighestDepth());
  return mcOrigin;
 }
 private function getRGB(i:Number,u:Number):Number {
  rgb = (i-u)*200;
  return rgb;
 }
 private function getPixelPos(i:Number):Number {
  pixelPos = Math.floor((i+1.5)*133.3);
  return pixelPos;
 }
 private function timeCheck(i:Number):Boolean {
  if ((getTimer()-i)   return true;
  } else {
   return false;
  }
 }
 //public Method;
 public static function pixelStatistic():Number {
  return pixelNum;
 }
 public function tester(u:Number):Void {
  rgbOffset = Math.floor(100*Math.random());
  timeGot = getTimer();
  var mc = mcCreator();
  mc.attachBitmap(bitmapCreator(), this.getNextHighestDepth());
  mc._x = mc._y=-200;
  //以下是Julia算法.
  for (var i = -1.5; i<=1.5; i += u) {
   for (var j = -1.5; j<=1.5; j += u) {
    cx = i;
    cy = j;
    for (var n = 1; n<=100; n++) {
     pixelNum++;
     x2 = cx*cx-cy*cy+a;
     y2 = 2*cy*cx+b;
     cx = x2;
     cy = y2;
     if (cx*cx+cy*cy>4) {
      break;
     }
     if (!timeCheck(timeGot)) {
      return;
     }
    }
    bitmapCreator().setPixel(getPixelPos(i), getPixelPos(j), getRGB(n,rgbOffset));
   }
  }
 }
}

时间: 2024-09-20 00:41:01

使用Julia集测试计算机性能的相关文章

使用IBM Rational的统一的测试工具集测试并仿真Web Services

IBM Rational Test Workbench(RTW)是 IBM Rational 的统一的测试工具集,包括功能测试.性能测试 .接口测试等模块,满足客户多种类型的自动化测试需求.其中 Rational Integration Tester(以下简称 RIT)是接口测试工具,可以对包括 Web Services.HTTP.Socket.MQ.Database 等多种类型的接口直接进 行自动化的功能/性能测试测试.本文介绍如何通过 Rational Integration Tester

探索式测试的相关问题的个人理解

首先需要声明的是,目前我对探索式测试理论和实践的理解还停留在1到2年前的水平,很多内容都在<探索式测试实践之路>可以了解到的,但是需要告诉大家的是,虽然国内对ET的理论和实践进步不大,但是国外一些测试大师对ET的理论和实践都有很大的提高,包括工具.流程和总体解决方案.由于最近两年的主要精力不在这个上面,所以对国外这两年ET的发展了解不多,如果有说的不对的地方,欢迎指出来,也让我多学习和了解下.      虽然很多人都看了<探索式测试实践之路>这本书,但是并不是所有人都能理解这里面的

PostgreSQL 最佳实践 - 块级增量备份(ZFS篇)备份集自动校验

背景 前面我写过一篇关于使用ZFS的快照特性和PostgreSQL流复制来完成数据库块级别的增量PITR备份的文章. 达到可控的备份与恢复SLA. https://yq.aliyun.com/articles/59363 本文将基于这个备份机制, 写一个自动的恢复测试脚本. (假设快照每天一个, 并且按规则命名) 备份集测试校验脚本 2个脚本如下 入口脚本 因为可能有多个恢复实例,这样统一管理比较方便. # mkdir /root/test_recovery [root@db-pitr test

IBM测试流程

在"测试评估和计划"中的一些测试计划和测试策略等活动的介绍,可以在网上搜索到,而且这些内容对于初学者来说只需要了解就行了,因为这些内容大多是测试经理和测试架构师在做. 在本章节的介绍中 测试用例的内容: 测试用例是为特定的目的而设计的一组测试输入.执行条件和预期的结果.测试用例是执行的最小实体. 开始点:当需求已经被记载和复查,相关的测试方案已获批准的时候,测试用例开发才开始. 结束点:测试用例是用于整个测试执行阶段,并且为后续项目回归测试用例重用而保留. 测试用例的作用:测试用例是执

mongodb 副本集 搭建高可用性服务

NoSQL的产生就是为了解决大数据量.高扩展性.高性能.灵活数据模型.高可用性.但是光通过主从模式的架构远远达不到上面几点,由此MongoDB设计了副本集和分片的功能.这篇文章主要介绍副本集: mongoDB官方已经不建议使用主从模式了,替代方案是采用副本集的模式,如图: 那什么是副本集呢?打魔兽世界总说打副本,其实这两个概念差不多一个意思.游戏里的副本是指玩家集中在高峰时间去一个场景打怪,会出现玩家暴多怪物少的情况,游戏开发商为了保证玩家的体验度,就为每一批玩家单独开放一个同样的空间同样的数量

【Python数据挖掘课程】四.决策树DTC数据分析及鸢尾数据集分析

        今天主要讲述的内容是关于决策树的知识,主要包括以下内容:         1.分类及决策树算法介绍         2.鸢尾花卉数据集介绍         3.决策树实现鸢尾数据集分析         前文推荐:       [Python数据挖掘课程]一.安装Python及爬虫入门介绍       [Python数据挖掘课程]二.Kmeans聚类数据分析及Anaconda介绍        [Python数据挖掘课程]三.Kmeans聚类代码实现.作业及优化        希望

机器学习排序之Learning to Rank简单介绍

PS:文章主要转载自CSDN大神hguisu的文章"机器学习排序":          http://blog.csdn.net/hguisu/article/details/7989489      最近需要完成课程作业--分布式排序学习系统.它是在M/R.Storm或Spark架构上搭建分布式系统,并使用学习排序Pointwise.Pairwise和Listwise三大类算法实现对微软数据集(Microsoft Learning to Rank Datasets)进行学习排序,这篇

Linux系统监控神器--Collectl

系统资源监控 为使系统良好运转,Linux系统管理员经常需要监测cpu,内存,磁盘,网络等系统信息.Linux上已有iotop,top,free,htop,sar等丰富的常规工具来实现监测功能.今天让我们走进Collectl来了解这个集测试/监控/分析系统性能为一体的Linux工具. Collectl作为一个轻量级的监控工具,在同类工具中是功能最全的.用户可监测不同的复杂系统矩阵值,并可保留数据以做之后的分析.不同于其他只用来监测特定系统参数的工具,Collectl可以同时监测不同的变量,并以合

如何用TensorFlow生成令人惊艳的分形图案

今天来介绍一个小项目:在TensorFlow中生成分形图案.分形本身只是一个数学概念,与机器学习并无太大关系,但是通过分形的生成,我们可以了解怎么在TensorFlow中进行数学计算,以及如何进行基本的流程控制,是学习TensorFlow的一个非常好的练手项目. 在开始之前,需要说明的是,TensorFlow官方也提供了一个生成分形图案的教程(地址:www.tensorflow.org/tutorials/mandelbrot),然而官方教程中生成的图像实在是太丑了,而且只能生成一种图案,我对官