Advertisement
Guest User

Gamemaker 2 Data Structure Performance

a guest
Dec 25th, 2019
499
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. randomize();
  2.  
  3. var NUM_LOOPS = 100000;
  4. var i = 0;
  5. var label;
  6.  
  7.  
  8. // Find cost of generating random numbers
  9. label = "FOR LOOP AND RANDOM NUMBER INFRASTRUCTURE";
  10. var dummy;
  11. dbg_timerStart(label);
  12. for (i = 0; i < NUM_LOOPS; i++) {
  13.   dummy = random(10000);
  14. }
  15. dbg_timerEnd(label);
  16.  
  17.  
  18. label = "FILLING ARRAY (UNINITIALIZED)";
  19. var arr;
  20. dbg_timerStart(label);
  21. for (i = 0; i < NUM_LOOPS; i++) {
  22.   arr[i] = random(10000);
  23. }
  24. dbg_timerEnd(label);
  25.  
  26. label = "READING ARRAY (UNINITIALIZED)";
  27. dbg_timerStart(label);
  28. for (i = 0; i < NUM_LOOPS; i++) {
  29.   dummy = arr[i];
  30. }
  31. dbg_timerEnd(label);
  32.  
  33.  
  34. label = "FILLING ARRAY (INITIALIZED)";
  35. var arr2 = array_create(NUM_LOOPS);
  36. dbg_timerStart(label);
  37. for (i = 0; i < NUM_LOOPS; i++) {
  38.   arr2[i] = random(10000);
  39. }
  40. dbg_timerEnd(label);
  41.  
  42. label = "READING ARRAY (INITIALIZED)";
  43. dbg_timerStart(label);
  44. for (i = 0; i < NUM_LOOPS; i++) {
  45.   dummy = arr2[i];
  46. }
  47. dbg_timerEnd(label);
  48.  
  49.  
  50. label = "FILLING MAP";
  51. var map = ds_map_create();
  52. dbg_timerStart(label);
  53. for (i = 0; i < NUM_LOOPS; i++) {
  54.   ds_map_set(map, i, random(10000));
  55. }
  56. dbg_timerEnd(label);
  57.  
  58. label = "READING MAP";
  59. dbg_timerStart(label);
  60. for (i = 0; i < NUM_LOOPS; i++) {
  61.   dummy = ds_map_find_value(map, i);
  62. }
  63. ds_map_destroy(map);
  64. dbg_timerEnd(label);
  65.  
  66.  
  67. label = "FILLING LIST";
  68. var list = ds_list_create();
  69. dbg_timerStart(label);
  70. for (i = 0; i < NUM_LOOPS; i++) {
  71.   ds_list_set(list, i, random(10000));
  72. }
  73. dbg_timerEnd(label);
  74.  
  75. label = "READING LIST";
  76. dbg_timerStart(label);
  77. for (i = 0; i < NUM_LOOPS; i++) {
  78.   dummy = ds_list_find_value(list, i);
  79. }
  80. ds_list_destroy(list);
  81. dbg_timerEnd(label);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement