string temp; integer k = 5; integer l = 6; integer m = 7; list L2 = ["a", 0, NULL_KEY]; integer x; integer y; integer z; list L3; callmelocal() { //define and initalize variables with default values integer a; integer b; integer c; list L1; a = 5; b = 6; c = 7; L1 = ["a", 0, NULL_KEY]; temp = "a"; // just something common to do } callmeglobalandinit() { //variables k, l, m and L2 was already initialized with default values temp = "a"; // just something common to do } callmeglobal() { //initalize variables with default values, they are already defined x = 5; y = 6; z = 7; L3 = ["a", 0, NULL_KEY]; temp = "a"; // just something common to do } default { touch_start(integer num_detected) { integer i=0; integer repeats = 10000; float start; float elapsed; llOwnerSay("Running ..."); llResetTime(); start = llGetTime(); for (i=0; i<repeats; i++) { callmelocal(); //command to benchmark } elapsed = llGetTime() - start; llOwnerSay("Time for " + (string)repeats + " calls for Test #1: " + (string)elapsed + " seconds"); llResetTime(); start = llGetTime(); for (i=0; i<repeats; i++) { callmeglobal(); //command to benchmark } elapsed = llGetTime() - start; llOwnerSay("Time for " + (string)repeats + " calls for Test #2: " + (string)elapsed + " seconds"); llResetTime(); start = llGetTime(); for (i=0; i<repeats; i++) { callmeglobalandinit(); //command to benchmark } elapsed = llGetTime() - start; llOwnerSay("Time for " + (string)repeats + " calls for Test #3: " + (string)elapsed + " seconds"); } }
コンテンツに移動
483
ページ