Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // Script assets have changed for v2.3.0 see
- // https://help.yoyogames.com/hc/en-us/articles/360005277377 for more information
- function Performance(numloops) {
- gml_pragma("forceinline");
- gml_pragma("UnityBuild", "true");
- gml_release_mode(true);
- randomize();
- var __numLoops = numloops;
- var __i = 0;
- var __strOut = ""
- __strOut += "\n##### ARRAY #####\n\n"
- ////////////////////////////////////////////
- // Array Uninitialized
- var __label = "FILLING ARRAY (UNINITIALIZED)";
- var __arr1 = [];
- var __start = get_timer();
- for (__i = 0; __i < __numLoops; __i++) {
- __arr1[ __i ] = random(10000);
- }
- var __end = get_timer();
- var __result = (__end - __start)
- __strOut += __label + ": " + string(__result) + "\n"
- ////////////////////////////////////////////
- // Array Initialized
- var __label = "FILLING ARRAY (INITIALIZED)";
- var __arr2 = array_create(__numLoops);
- var __start = get_timer();
- for (__i = 0; __i < __numLoops; __i++) {
- __arr2[ __i ] = random(10000);
- }
- var __end = get_timer();
- var __result = (__end - __start)
- __strOut += __label + ": " + string(__result) + "\n"
- ////////////////////////////////////////////
- // Array Read
- var __label = "READING ARRAY";
- var __dummy;
- var __start = get_timer();
- for (__i = 0; __i < __numLoops; __i++) {
- __dummy = __arr2[ __i ]
- }
- var __end = get_timer();
- var __result = (__end - __start)
- __strOut += __label + ": " + string(__result) + "\n"
- ////////////////////////////////////////////
- // List fill (UNINITIALIZED)
- __strOut += "\n##### LIST #####\n\n"
- var __label = "FILLING LIST (UNINITIALIZED)";
- var __ls1 = ds_list_create();
- var __start = get_timer();
- for (__i = 0; __i < __numLoops; __i++) {
- __ls1[| __i] = random(10000)
- }
- var __end = get_timer();
- var __result = (__end - __start)
- __strOut += __label + ": " + string(__result) + "\n"
- ////////////////////////////////////////////
- // List fill (BACKWARDS)
- var __label = "FILLING LIST (INITIALIZED)";
- var __ls2 = ds_list_create();
- var __start = get_timer();
- for (__i = __numLoops - 1; __i >= 0; __i--) {
- __ls2[| __i] = random(10000)
- }
- var __end = get_timer();
- var __result = (__end - __start)
- __strOut += __label + ": " + string(__result) + "\n"
- ////////////////////////////////////////////
- // List Read
- var __label = "READING LIST";
- var __dummy;
- var __start = get_timer();
- for (__i = 0; __i < __numLoops; __i++) {
- __dummy = __ls1[| __i]
- }
- var __end = get_timer();
- var __result = (__end - __start)
- __strOut += __label + ": " + string(__result) + "\n"
- ////////////////////////////////////////////
- // Grid Fill
- __strOut += "\n##### GRID #####\n\n"
- var __label = "FILLING GRID";
- var __gr = ds_grid_create(1, __numLoops)
- var __start = get_timer();
- for (__i = 0; __i < __numLoops; __i++) {
- ds_grid_set(__gr, 0, __i, random(10000))
- }
- var __end = get_timer();
- var __result = (__end - __start)
- __strOut += __label + ": " + string(__result) + "\n"
- ////////////////////////////////////////////
- // Grid Read
- var __label = "READING GRID";
- var __dummy;
- var __start = get_timer();
- for (__i = 0; __i < __numLoops; __i++) {
- __dummy = __gr[# 0, __i]
- }
- var __end = get_timer();
- var __result = (__end - __start)
- __strOut += __label + ": " + string(__result) + "\n"
- ////////////////////////////////////////////
- // Map Fill
- __strOut += "\n##### MAP #####\n\n"
- var __label = "FILLING MAP";
- var __mp = ds_map_create()
- var __start = get_timer();
- for (__i = 0; __i < __numLoops; __i++) {
- ds_map_add(__mp, __i, random(10000))
- }
- var __end = get_timer();
- var __result = (__end - __start)
- __strOut += __label + ": " + string(__result) + "\n"
- ////////////////////////////////////////////
- // Map Read
- var __label = "READING MAP";
- var __dummy;
- var __mp = ds_map_create();
- var __start = get_timer();
- for (__i = 0; __i < __numLoops; __i++) {
- __dummy = __mp[? __i]
- }
- var __end = get_timer();
- var __result = (__end - __start)
- __strOut += __label + ": " + string(__result) + "\n"
- show_message(__strOut);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement