sbsmac 0 Posted May 15, 2010 (edited) What is it ? ArmaFPSAnalyser is a tool that can show you the performance of your game based on some specially-instrumented mission files. In addition, the scripts are available to allow you to create your own benchmark missions. The screenshot below gives you an idea of the kind of information the tool provides - in this example performance across three different kinds of location (city, coast and forest) is being compared. (In this case you can see quite clearly that performance of the 1.05 patch is poorer in city locations than elsewhere.) How is this different to FRAPS or ArmaMark? Most benchmarks show you an average fps (frames per second) reading and, if you are lucky, a minimum fps reading. The problem with these is that even the minimum fps number is an average across several frames. This is not a good approach for ArmA where the main issues seem to be around 'stutter'; ie, individual frames that take considerably longer than the ones before and after them. FPSAnalyser records the time taken for _every_ frame, as reported by the game and shows you the information in several different ways. It also uses a script-based approach to ensure that benchmarks are as repeatable as possible so you can truly isolate the factors that are affecting performance. Finally, the analyser allows you to plot multiple runs so you can directly compare benchmarks as you change settings. How does it work ? The scripts create a camera which flies between a set of markers. As this is happening, a loop within the scripts records the timestamp of each individual frame. After the run is completed, the result are written to your arma2.rpt file. The analyser is then reads out the results and plots them. What does it all mean ? Although the plots all show 'fps' it's important to realise that what is being plotted is actually 1/frame-duration for each and every frame. I've chosen to use this presentation rather than frame-duration because most people are a lot more comfortable with fps and have an inherent feeling for what is 'good'. The simplest plot to understand is "FPS over time". This just shows the instantaneous fps for each frame during the course of the benchmark. You can see in this example plot that although most frames are at >20fps, there are some dips down to around 10 which will be perceived as stuttering. The '% time spent below framerate' plot shows the information in a slightly different way. Rather than plotting the frames in the order they occurred, it looks at the distribution of fps. The stuttering can be seen here as the circled 'tail' of low-fps frames. The auto-correlation plot shows the same information in yet another way - it shows the relationship of each frame to the frame immediately before it. A game that is running rock-solid at 60fps would show a very dense blob at the the top right this graph. A game where the frame-rate was varying smoothly will tend to cluster around a diagonal-line (shown in red in the example). If the framerate is varying wildly (ie stuttering) you will see 'outliers' such as those circled in orange. These are frames which have taken much longer to render than the frame immediately before them. Installation To install, download the archive from here. Run the setup utitility to install the analyser. Copy the benchmarks in the missions folder to your own ArmA2 missions directory. How to use the tool – getting started Run one of example benchmarks in ArmA2. After the camera has stopped moving you will see a report “LOG WRITTENâ€. If you want to you can re-run the benchmark with different settings (eg, try changing the view distance or texture details). Tab out of ArmA2 and start up the analyzer tool. By default it will display plots for the last benchmark you ran. You can compare several benchmarks together by using the Benchmarks->Add/Remove option. You can give benchmarks useful labels using the Benchmarks->Details menu option. You will also see information here such as the aram2.exe build that was used and the startup parameters (very useful for comparing betas!) IMPORTANT The analyser expects to see some header information written by ArmA (build id, startup parameters, resolution etc) so if you edit the rpt file by hand you can confuse it. If you want to start with a 'clean' rpt file, the best approach is just to delete it before starting ArmA. Creating your own benchmarks. The scripts (in the 'scripts' folder) make it very easy to create your own benchmarks. Just create a new mission in the editor and copy the init.sqf file and ctf folder into the mission folder. In the editor you will need to add some markers to tell the camera what route to follow. The markers need to be name fps_0,fps_1,fps_2 etc, as many as you want. You can control the way the camera behaves at each point by adding keywords to the marker text. speed=N will change the speed of the camera when it hits this marker. height=N will ensure the camera is at this height when it reaches the marker target=x changes the direction the camera faces. Target=next means that the camera will always face the next marker, ie it will look straight ahead Target=player means that the camera will face the player Any other value, eg target=zzz will cause the camera to face a marker of that name. When developing new benchmarks you can temporarily disable logging using the nolog keyword. You can change the 'name' of the benchmark (which will be shown in the analyser) by placing text before the keywords. Here's an example from the BM_cityRun benchmark... Disclaimer FPS is only one aspect of the game experience- this tool can't measure other issues such as lod pop-up. The tool almost certainly contains bugs. If you find one or have the tool crash, please report it here and I will try to fix it. Edited May 16, 2010 by sbsmac Share this post Link to post Share on other sites
sickboy 13 Posted May 15, 2010 Totally awesome! Thanks Share this post Link to post Share on other sites
mosh 0 Posted May 15, 2010 Going to try it right now, thanks mac! Share this post Link to post Share on other sites
sbsmac 0 Posted May 15, 2010 Here are some results I got from trying out 1.05 vs the latest beta (70313) with the various exThreads options. I was a bit surprised to find that 1.05 seems to have been the best performing... Share this post Link to post Share on other sites
qwertz 10 Posted May 15, 2010 Awesome tool. Can I use this with other islands as well or is there any reason why that would not work ? Share this post Link to post Share on other sites
sbsmac 0 Posted May 15, 2010 It will work with any island - just create a mission using the editor, drop the scripts in, and create a few markers as waypoints for the camera. If you have a any problems, drop me a line here and I will do my best to help out :) Share this post Link to post Share on other sites
suma 8 Posted May 15, 2010 It also relies on the accuracy of the underlying 'time' function from ArmA and it's unclear whether this is truly tied to the real-time-clock. No, time is not tied to real-time clock. Sometimes it may differ significantly (an obvious example is time acceleration). To accommodate for benchmarking we have added following functions in ArmA 2: diag_fps Returns average framerate over last 16 frames diag_frameno Returns number of frame currently displayed diag_fpsmin Returns minimal framerate. Calculated from the longest frame over last 16 frames diag_tickTime Real time spent from the start of the game Share this post Link to post Share on other sites
sbsmac 0 Posted May 15, 2010 (edited) *Edit* changed text after researching time vs diag_tickTime a bit more Thanks Suma. I'd originally switched from diag_tickTime because I noticed it seems to be limited to 6 signifcant digits. Ie, past 1000 seconds, you only get 2 decimal places, ie a resolution of 1/100th second. Unfortunately, having just tested it, I notice that 'time' has the same issue, it's just less noticable because diag_tickTime counts from the time the game is booted whereas 'time' is reset at the beginning of the mission. I understand the affect of 'acctime' of course, and also notice that if the game is actually halted (eg, if it is dragged whilst windowed) 'time' is halted. Other than that is it an inherently unreliable measure ? I'm inclined to switch to diag_tickTime for the scripts but am a little concerned about the loss of precision past 1000 seconds and particularly past 10000. Of course, what would be _really_ useful would be a scripting command that returned the system time/tick value so that the traces could be correlated with external events. It would also be very nice to be able to read the graphics settings from in-game as well but I know you guys are busy ... ;-) ---------- Post added at 09:17 PM ---------- Previous post was at 08:54 PM ---------- Ah - just worked out that the restriction on significant digits is in the format/printing so using diag_ticktime with a zero-ing offset seems to be the best way to go. Will update the scripts and benchmarks shortly... Edited May 15, 2010 by sbsmac Share this post Link to post Share on other sites
mr burns 132 Posted May 15, 2010 diag_tickTime Real time spent from the start of the game As much as i´m against any sort of achievements and their plain stupid over-employment in console games and their ports to PC´s, it´d be quite fun to have the arma editor monitor your on times (actually working, not idling) and saving it to some kind of hall of fame (of geeks) :D Sorry for OT. Share this post Link to post Share on other sites
sbsmac 0 Posted May 15, 2010 Missions and scripts updated to use diag_tickTime as per Suma's advice. Download link in first post updated, new download is http://dev-heaven.net/attachments/download/5876/ArmA2FPSAnalyser_v2.rar Share this post Link to post Share on other sites
Guest Posted May 15, 2010 Thanks for informing us about your work :cool: Release frontpaged on the Armaholic homepage. ArmA2 FPS analyser v2.0 Share this post Link to post Share on other sites
Alex72 1 Posted May 15, 2010 Brilliant work sbsmac! Time for a test-frenzy. :) Share this post Link to post Share on other sites
jpinard 10 Posted May 16, 2010 Man you people are damn smart! :p Incredible tool. Share this post Link to post Share on other sites
langgis08 10 Posted May 16, 2010 Thx very much for programming the Arma2FPS-Analyzer, the screenshots posted here look very good and sure give interesting feedback for all testers. But I must be doing something wrong either in setup or in saving/getting back data / using the tool. First of all this question: is it correct, that every time you want to use the tool you have to run setup.exe ? because I don't get info about any installation-path. so there isn't a resident .exe file except the setup.exe ? my steps in detail: -> I have copied the BM....pbo's in to Arma 2\missions\ -> I find these BM-missions in scenarios as expected and I can also run them -> while running the BM-mission I have no other FPS-meter at OSD (I normally use FPS-meter of ATITrayTools) -> the mission ends with the text '1-1-A 1 (langgis08) LOG SAVED' -> I tab on desktop, let the tool's setup.exe (V2.0) run and ... I get a weird graph in "FPS over time": Y-Axis (fps) ranges from 0 to 80, x-Axis (time) ranges from 0 to 8889277 nearly totally blue as if all dots/pixels in the graph's area are set ... (?) -> tried it with every BM-file, all the time same crazy results here's the data logged in arma2.rpt (example): ===================================================================== == C:\Program files\Bohemia Interactive\ArmA 2\beta\arma2.exe == "C:\Program files\Bohemia Interactive\ArmA 2\beta\arma2.exe" -mod=beta -exThreads=3 -nosplash -world=empty ===================================================================== Exe timestamp: 2010/05/11 19:05:37 Current time: 2010/05/16 11:27:03 Item str_disp_server_control listed twice Exe version: 1.05.70313 ["START FPS TRACE ",228.178,"city run"] "LABEL city run" 25.039 25.095 25.149 25.201 25.258 25.316 25.371 25.423 25.48 25.535 25.591 25.645 25.7 25.755 25.812 25.867 25.928 25.986 26.042 26.102 26.158 26.218 26.274 26.33 26.389 26.443 26.501 26.553 26.609 26.699 26.759 26.817 26.873 26.929 26.987 27.038 27.104 27.16 27.219 27.274 27.335 27.394 27.447 27.507 27.569 27.627 27.686 27.742 27.805 27.861 27.921 27.982 28.039 28.098 28.155 28.211 28.273 28.335 28.389 28.447 28.515 28.581 28.645 28.706 28.768 28.83 28.89 28.946 29.004 29.061 29.117 29.176 29.235 29.295 29.353 29.407 29.465 29.527 29.582 29.638 29.687 29.745 29.798 29.852 29.905 29.955 30.009 30.058 30.1 30.162 30.218 30.262 30.308 30.351 30.401 30.438 30.546 30.653 30.702 30.745 30.794 30.835 30.883 30.921 30.957 31.013 31.052 31.111 31.17 31.219 31.277 31.323 31.37 31.417 31.465 31.511 31.558 31.601 31.666 31.713 31.754 31.817 31.857 31.909 31.953 32.008 32.042 32.095 32.143 32.184 32.227 32.272 32.316 32.36 32.401 32.455 32.5 32.549 32.602 32.644 32.681 32.73 32.77 32.815 32.857 32.911 32.952 32.996 33.038 33.066 33.125 33.166 33.214 33.249 33.29 33.325 33.361 33.4 33.441 33.481 33.529 33.57 33.611 33.67 33.708 33.75 33.792 33.837 33.877 33.919 33.961 34.006 34.045 34.086 34.131 34.175 34.218 34.259 34.298 34.342 34.384 34.433 34.473 34.514 34.556 34.598 34.641 34.682 34.722 34.765 34.807 34.848 34.888 34.927 34.971 35.013 35.053 35.093 35.132 35.175 35.22 35.263 35.301 35.339 35.379 35.422 35.464 35.505 35.544 35.587 35.63 35.672 35.714 35.752 35.796 35.838 35.879 35.918 35.959 36.009 36.048 36.099 36.149 36.19 36.233 36.275 36.317 36.359 36.4 36.441 36.485 36.527 36.567 36.607 36.657 36.699 36.739 36.801 36.845 36.893 36.936 36.975 37.018 37.054 37.092 37.131 37.178 37.217 37.257 37.301 37.351 37.389 37.429 37.467 37.509 37.552 37.587 37.626 37.668 37.705 37.748 37.79 37.831 37.875 37.925 37.969 38.02 38.062 38.117 38.161 38.212 38.259 38.311 38.355 38.411 38.457 38.503 38.561 38.617 38.658 38.717 38.781 38.827 38.884 38.944 39.001 39.049 39.105 39.147 39.204 39.251 39.307 39.352 39.409 39.469 39.519 39.572 39.673 39.726 39.777 39.822 39.879 39.929 40.036 40.096 40.15 40.219 40.28 40.327 40.379 40.426 40.469 40.515 40.563 40.613 40.654 40.704 40.749 40.796 40.838 40.892 40.931 40.984 41.023 41.075 41.113 41.175 41.209 41.271 41.307 41.37 41.402 41.475 41.511 41.57 41.61 41.669 41.71 41.773 41.822 41.868 41.912 41.961 42.016 42.114 42.163 42.211 42.264 42.357 42.409 42.465 42.514 42.56 42.61 42.654 42.707 42.753 42.806 42.851 42.896 42.937 42.992 43.033 43.077 43.126 43.169 43.216 43.255 43.308 43.352 43.393 43.441 43.479 43.532 43.575 43.625 43.663 43.724 43.764 43.827 43.859 43.923 43.962 44.012 44.052 44.101 44.138 44.19 44.237 44.284 44.332 44.38 44.426 44.477 44.52 44.585 44.623 44.664 44.732 44.773 44.836 44.876 44.927 44.969 45.02 45.065 45.109 45.149 45.205 45.261 45.304 45.357 45.407 45.448 45.499 45.544 45.58 45.637 45.686 45.735 45.779 45.825 45.87 45.922 45.964 46.006 46.052 46.097 46.141 46.181 46.227 46.274 46.318 46.368 46.412 46.452 46.503 46.544 46.593 46.64 46.686 46.727 46.781 46.826 46.873 46.934 46.976 47.077 47.153 47.195 47.246 47.289 47.34 47.386 47.435 47.484 47.521 47.598 47.647 47.706 47.743 47.811 47.853 47.903 47.947 47.996 48.038 48.145 48.186 48.241 48.289 48.336 48.375 48.434 48.473 48.522 48.572 48.614 48.662 48.71 48.757 48.802 48.847 48.89 48.939 48.976 49.048 49.087 49.143 49.196 49.237 49.289 49.34 49.381 49.423 49.492 49.528 49.584 49.623 49.676 49.715 49.819 49.858 49.897 49.939 49.98 50.019 50.062 50.106 50.144 50.184 50.23 50.272 50.313 50.352 50.391 50.449 50.495 50.535 50.577 50.637 50.672 50.728 50.769 50.821 50.87 50.913 50.955 51.003 51.044 51.099 51.146 51.205 51.26 51.308 51.359 51.406 51.458 51.505 51.552 51.598 51.644 51.679 51.741 51.789 51.837 51.877 51.936 51.978 52.031 52.063 52.129 52.172 52.213 52.26 52.303 52.339 52.394 52.436 52.492 52.543 52.598 52.653 52.696 52.755 52.797 52.853 52.898 52.953 52.995 53.056 53.102 53.151 53.196 53.249 53.287 53.349 53.39 53.449 53.492 53.54 53.588 53.639 53.689 53.732 53.779 53.832 53.879 53.931 53.974 54.03 54.085 54.129 54.195 54.235 54.298 54.339 54.389 54.442 54.488 54.537 54.576 54.636 54.677 54.78 54.839 54.893 54.948 54.999 55.039 55.079 55.13 55.175 55.219 55.262 55.311 55.356 55.402 55.44 55.487 55.526 55.586 55.617 55.69 55.727 55.778 55.816 55.856 55.903 55.945 55.984 56.021 56.065 56.104 56.148 56.19 56.229 56.272 56.313 56.355 56.395 56.435 56.477 56.519 56.561 56.602 56.639 56.681 56.725 56.765 56.81 56.857 56.892 56.932 56.976 57.013 57.054 57.101 57.141 57.183 57.229 57.267 57.315 57.354 57.395 57.443 57.48 57.526 57.572 57.611 57.651 57.69 57.738 57.775 57.818 57.869 57.912 57.976 58.02 58.066 58.109 58.177 58.231 58.279 58.314 58.364 58.418 58.465 58.508 58.561 58.6 58.645 58.7 58.736 58.792 58.847 58.881 58.941 58.976 59.012 59.051 59.11 59.151 59.215 59.263 59.307 59.351 59.396 59.449 59.496 59.549 59.588 59.639 59.686 59.777 59.851 59.898 59.943 59.979 60.028 60.064 60.114 60.155 60.197 60.237 60.269 60.327 60.368 60.4 60.436 60.491 60.523 60.56 60.606 60.641 60.669 60.706 60.752 60.789 60.824 60.853 60.897 60.928 60.957 60.987 61.024 61.069 61.11 61.151 61.19 61.229 61.271 61.31 61.352 61.391 61.438 61.468 61.508 61.537 61.587 61.623 61.661 61.691 61.729 61.764 61.797 61.828 61.857 61.907 61.946 61.996 62.022 62.07 62.11 62.167 62.202 62.254 62.282 62.353 62.391 62.44 62.474 62.522 62.565 62.607 62.652 62.694 62.743 62.783 62.829 62.877 62.917 62.965 63.01 63.056 63.088 63.144 63.181 63.239 63.274 63.33 63.373 63.417 63.463 63.5 63.574 63.603 63.663 63.698 63.761 63.796 63.853 63.894 63.958 63.997 64.052 64.094 64.143 64.181 64.234 64.28 64.331 64.37 64.425 64.464 64.524 64.565 64.61 64.662 64.708 64.745 64.806 64.848 64.906 64.949 64.995 65.032 65.087 65.123 65.191 65.23 65.286 65.326 65.391 65.438 65.48 65.532 65.576 65.637 65.683 65.737 65.779 65.831 65.886 65.925 65.981 66.019 66.08 66.117 66.179 66.232 66.282 66.331 66.389 66.434 66.486 66.539 66.583 66.643 66.685 66.737 66.776 66.829 66.869 66.932 66.973 67.012 67.06 67.104 67.148 67.194 67.228 67.291 67.325 67.391 67.433 67.493 67.536 67.582 67.626 67.674 67.716 67.767 67.818 67.858 67.91 67.951 68.003 68.038 68.101 68.144 68.194 68.236 68.288 68.33 68.38 68.419 68.475 68.519 68.567 68.605 68.668 68.713 68.755 68.806 68.847 68.896 68.939 68.988 69.025 69.083 69.122 69.184 69.225 69.277 69.311 69.364 69.406 69.45 69.496 69.537 69.577 69.63 69.679 69.725 69.772 69.826 69.87 69.948 70.044 70.101 70.15 70.199 70.246 70.328 70.428 70.475 70.538 70.629 70.675 70.787 70.839 70.886 70.936 70.983 71.037 71.084 71.137 71.186 71.235 71.286 71.339 71.384 71.439 71.499 71.549 71.602 71.647 71.696 71.74 71.841 71.94 71.99 72.043 72.094 72.142 72.189 72.234 72.282 72.328 72.376 72.429 72.47 72.511 72.561 72.604 72.663 72.706 72.752 72.797 72.844 72.889 72.933 72.977 73.02 73.065 73.112 73.155 73.199 73.246 73.293 73.34 73.381 73.426 73.473 73.52 73.564 73.608 73.651 73.698 73.744 73.789 73.833 73.875 73.922 73.964 74.015 74.058 74.102 74.148 74.195 74.241 74.287 74.332 74.379 74.426 74.473 74.519 74.559 74.607 74.652 74.699 74.744 74.797 74.842 74.887 74.938 74.981 75.029 75.073 75.117 75.164 75.208 75.254 75.304 75.351 75.398 75.444 75.489 75.535 75.581 75.626 75.671 75.721 75.767 75.816 75.862 75.908 75.961 76.007 76.061 76.106 76.155 76.197 76.239 76.286 76.332 76.374 76.419 76.466 76.515 76.557 76.615 76.657 76.714 76.759 76.807 76.849 76.901 76.949 76.994 77.049 77.096 77.145 77.19 77.241 77.284 77.339 77.384 77.427 77.487 77.528 77.591 77.637 77.684 77.73 77.783 77.916 77.975 78.032 78.088 78.143 78.26 78.311 78.366 78.424 78.475 78.528 78.644 78.7 78.764 78.817 78.876 78.936 78.992 79.046 79.101 79.149 79.2 79.248 79.296 79.349 79.394 79.453 79.499 79.568 79.614 79.663 79.711 79.763 79.817 79.861 79.92 79.968 80.01 80.062 80.11 80.154 80.208 80.261 80.307 80.361 80.407 80.464 80.516 80.561 80.616 80.668 80.713 80.758 80.812 80.86 80.91 80.947 81.008 81.05 81.097 81.142 81.196 81.234 81.291 81.335 81.388 81.431 81.492 81.54 81.587 81.656 81.705 81.759 81.806 81.853 81.902 81.953 82.011 82.066 82.118 82.184 82.234 82.292 82.344 82.394 82.441 82.491 82.541 82.594 82.651 82.704 82.75 82.805 82.865 82.911 82.98 83.025 83.076 83.125 83.174 83.223 83.272 83.322 83.37 83.421 83.474 83.523 83.57 83.616 83.668 83.71 83.759 83.801 83.854 83.898 83.952 83.992 84.055 84.101 84.15 84.196 84.247 84.294 84.338 84.385 84.433 84.477 84.52 84.568 84.613 84.659 84.705 84.75 84.796 84.845 84.887 84.946 84.994 85.045 85.096 85.144 85.186 85.235 85.283 85.33 85.372 85.434 85.483 85.529 85.579 85.627 85.677 85.726 85.773 85.819 85.859 85.909 85.954 86.003 86.054 86.11 86.154 86.21 86.252 86.293 86.341 86.397 86.448 86.489 86.536 86.582 86.621 86.671 86.706 86.761 86.805 86.854 86.886 86.955 86.99 87.051 87.09 87.147 87.186 87.244 87.287 87.342 87.379 87.437 87.481 87.531 87.57 87.639 87.685 87.744 87.788 87.841 87.904 88.047 88.103 88.16 88.22 88.265 88.33 88.37 88.497 88.609 88.657 88.699 88.742 88.793 88.823 88.895 88.932 88.993 89.03 89.097 89.146 89.199 89.25 89.298 89.352 89.397 89.449 89.499 89.54 89.579 89.618 89.758 89.799 89.847 89.884 89.951 89.984 90.061 90.098 90.149 90.183 90.243 90.29 90.408 90.455 90.506 90.558 90.609 90.721 90.851 90.965 91.018 91.066 91.113 91.164 91.209 91.266 91.322 91.371 91.418 91.465 91.513 91.556 91.612 91.654 91.706 91.756 91.803 91.856 91.906 91.959 92.018 92.073 92.132 92.185 92.241 92.298 92.352 92.404 92.455 92.511 92.564 92.617 92.67 92.731 92.785 92.846 92.897 92.95 93.005 93.06 93.105 93.155 93.2 93.252 93.3 93.348 93.397 93.438 93.496 93.542 93.585 93.631 93.672 93.719 93.76 93.81 93.849 93.899 93.939 93.988 94.034 94.072 94.124 94.164 94.214 94.258 94.309 94.352 94.394 94.439 94.482 94.528 94.567 94.624 94.671 94.712 94.756 94.824 94.875 94.921 94.959 94.999 95.05 95.092 95.137 95.176 95.223 95.264 95.311 95.352 95.393 95.451 95.49 95.544 95.585 95.634 95.673 95.723 95.765 95.815 95.871 95.918 95.962 96.008 96.05 96.1 96.133 96.19 96.233 96.277 96.333 96.379 96.427 96.482 96.528 96.578 96.62 96.671 96.724 96.769 96.816 96.871 96.911 96.964 97.014 97.055 97.112 97.153 97.207 97.243 97.37 97.414 97.458 97.506 97.54 97.602 97.646 97.686 97.748 97.789 97.841 97.876 97.941 97.974 98.03 98.068 98.126 98.161 98.211 98.25 98.307 98.345 98.399 98.446 98.489 98.541 98.576 98.636 98.677 98.727 98.766 98.822 98.854 98.914 98.956 99 99.055 99.096 99.133 99.194 99.238 99.279 ["END FPS TRACE"] so what am doing wrong ? OS: XP 32, SP3 Share this post Link to post Share on other sites
sbsmac 0 Posted May 16, 2010 (edited) >First of all this question: is it correct, that every time you want to use the tool you have to run setup.exe ? No - after you have run setup.exe once, you will find the analyser under start/all programs/armafpsanalyser :-) Apart from that, everything is fine (and you shouldn't be breaking anything by running setup twice - it's just unnecesary). I just tried the example data you sent and got a sensible output. Can you do the following ? 1) rename your arma2.rpt to oldarma2.rpt 2) Run another benchmark. 3) Start the analyser If you still get garbage output, could you send me the new arma2.rpt file by email or stick it on download site somewhere and I will take a look at what is going on. If the problem has magically fixed itself, could you send me the oldarma2.rpt file instead ? I suspect a parsing error - possibly due to stoppring a benchmakr during its output phase but only the complete file will tell. Edited May 16, 2010 by sbsmac Share this post Link to post Share on other sites
thebarricade 7 Posted May 16, 2010 Seems to be a nice program, but I can't get it to work on my pc (Vista 64). It fails with the following: See the end of this message for details on invoking just-in-time (JIT) debugging instead of this dialog box. ************** Exception Text ************** System.FormatException: Input string was not in a correct format. at System.Number.StringToNumber(String str, NumberStyles options, NumberBuffer& number, NumberFormatInfo info, Boolean parseDecimal) at System.Number.ParseSingle(String value, NumberStyles options, NumberFormatInfo numfmt) at System.Single.Parse(String s, NumberStyles style, NumberFormatInfo info) at WindowsFormsApplication1.Trace.readSubTrace(StreamReader sr) at WindowsFormsApplication1.Trace.read(StreamReader sr, Session ses, Int32 n) at WindowsFormsApplication1.Session.read(StreamReader sr) at WindowsFormsApplication1.Rpt.read(StreamReader sr) at WindowsFormsApplication1.Form1.Form1_Shown(Object sender, EventArgs e) at System.Windows.Forms.Form.OnShown(EventArgs e) at System.Windows.Forms.Control.InvokeMarshaledCallbackHelper(Object obj) at System.Threading.ExecutionContext.runTryCode(Object userData) at System.Runtime.CompilerServices.RuntimeHelpers.ExecuteCodeWithGuaranteedCleanup(TryCode code, CleanupCode backoutCode, Object userData) at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state) at System.Windows.Forms.Control.InvokeMarshaledCallback(ThreadMethodEntry tme) at System.Windows.Forms.Control.InvokeMarshaledCallbacks() ************** Loaded Assemblies ************** mscorlib Assembly Version: 2.0.0.0 Win32 Version: 2.0.50727.4200 (NetFxQFE.050727-4200) CodeBase: file:///C:/Windows/Microsoft.NET/Framework64/v2.0.50727/mscorlib.dll ---------------------------------------- ArmA2FPSAnalyser Assembly Version: 1.0.0.0 Win32 Version: 1.0.0.0 CodeBase: file:///C:/Users/Gamer/AppData/Local/Apps/2.0/OOC88DV6.TLV/62Y8E0EN.N0O/arma..tion_3f34483d80f35235_0001.0000_3410d77d693b9589/ArmA2FPSAnalyser.exe ---------------------------------------- System.Windows.Forms Assembly Version: 2.0.0.0 Win32 Version: 2.0.50727.4016 (NetFxQFE.050727-4000) CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System.Windows.Forms/2.0.0.0__b77a5c561934e089/System.Windows.Forms.dll ---------------------------------------- System Assembly Version: 2.0.0.0 Win32 Version: 2.0.50727.4016 (NetFxQFE.050727-4000) CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System/2.0.0.0__b77a5c561934e089/System.dll ---------------------------------------- System.Drawing Assembly Version: 2.0.0.0 Win32 Version: 2.0.50727.4016 (NetFxQFE.050727-4000) CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System.Drawing/2.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll ---------------------------------------- System.Configuration Assembly Version: 2.0.0.0 Win32 Version: 2.0.50727.4016 (NetFxQFE.050727-4000) CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System.Configuration/2.0.0.0__b03f5f7f11d50a3a/System.Configuration.dll ---------------------------------------- System.Xml Assembly Version: 2.0.0.0 Win32 Version: 2.0.50727.4016 (NetFxQFE.050727-4000) CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System.Xml/2.0.0.0__b77a5c561934e089/System.Xml.dll ---------------------------------------- System.Windows.Forms.DataVisualization Assembly Version: 3.5.0.0 Win32 Version: 3.5.30729.116 CodeBase: file:///C:/Users/Gamer/AppData/Local/Apps/2.0/OOC88DV6.TLV/62Y8E0EN.N0O/arma..tion_3f34483d80f35235_0001.0000_3410d77d693b9589/System.Windows.Forms.DataVisualization.DLL ---------------------------------------- Accessibility Assembly Version: 2.0.0.0 Win32 Version: 2.0.50727.4016 (NetFxQFE.050727-4000) CodeBase: file:///C:/Windows/assembly/GAC_MSIL/Accessibility/2.0.0.0__b03f5f7f11d50a3a/Accessibility.dll ---------------------------------------- System.Core Assembly Version: 3.5.0.0 Win32 Version: 3.5.30729.1 built by: SP CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System.Core/3.5.0.0__b77a5c561934e089/System.Core.dll ---------------------------------------- ************** JIT Debugging ************** To enable just-in-time (JIT) debugging, the .config file for this application or computer (machine.config) must have the jitDebugging value set in the system.windows.forms section. The application must also be compiled with debugging enabled. For example: <configuration> <system.windows.forms jitDebugging="true" /> </configuration> When JIT debugging is enabled, any unhandled exception will be sent to the JIT debugger registered on the computer rather than be handled by this dialog box. Any idea on what could be causing it? Thanks in advance, Anders Share this post Link to post Share on other sites
sbsmac 0 Posted May 16, 2010 It looks like it doesn't like the format of a floating point number in your rpt file - could you send me a copy ? Share this post Link to post Share on other sites
Alex72 1 Posted May 16, 2010 Got some time to test this now, but i get the same problem as TheBarricade. When i try to start your app after running a bench an error notice come up with the exact same content as above. Initial run after install works ok. Win7 64bit. Maybe a 64bit issue? Share this post Link to post Share on other sites
sbsmac 0 Posted May 16, 2010 Hmm - not sure but if you could send me your arma2.rpt file I will take a look. Probably something simple in the parsing. Share this post Link to post Share on other sites
langgis08 10 Posted May 16, 2010 hi sbsmac, just sent you 2 files via email: arma2.rpt and screenshot.jpg of analyser output Share this post Link to post Share on other sites
sbsmac 0 Posted May 16, 2010 Ok, I have fixed one problem - possibly the one affecting Alex and thebarricade. The issue occurs when you start ArmA then tab out and manually edit your rpt file. The problem is the analyser expects to see some information output by ArmA (build id, startup parameters, resolution etc) so if this is missing it can get confused. I've added some code to display an error message if this condition is encountered. The app will automatically update next time you start it. I'll also update the instructions on the front page. Langgis - sorry I am still mystified by your problem since the rpt file loads fine here. I'll look at adding some debug later. Share this post Link to post Share on other sites
Alex72 1 Posted May 16, 2010 I did not remove anything from the RPT the first time i tested it though. It was only in the test i sent to you (RPT). But ill test this one. Thanks. Share this post Link to post Share on other sites
gonk 0 Posted May 16, 2010 great tool sbsmac... I just need a AI benchmark mission and that should cover most scenarios. Might give it a crack on my days off... Share this post Link to post Share on other sites
sbsmac 0 Posted May 16, 2010 Thansk ALex - there could be more than one issue here so if you still have problems send me the new rpt. Share this post Link to post Share on other sites
langgis08 10 Posted May 16, 2010 -> I tab on desktop, let the tool's setup.exe (V2.0) run and ... I get a weird graph in "FPS over time": Y-Axis (fps) ranges from 0 to 80, x-Axis (time) ranges from 0 to 8889277 nearly totally blue as if all dots/pixels in the graph's area are set ... (?) -> tried it with every BM-file, all the time same crazy results For all that have the same problem: sbsmac found out that it's because of the different floating point standards "." (mostly US/UK) instead of "," (mostly German). That's why my data mentioned above went astronomical high and made the output worthless. sbsmac changed in the "german" .rpt the "x.y" into "x,y" and now I have sensible output in the analyzer. Thx so far @sbsmac :) Share this post Link to post Share on other sites