Jump to content
Sign in to follow this  
sbsmac

ArmA2 FPS analyser - benchmarking tool

Recommended Posts

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.)

analyser.jpg

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.

FPSovertime.jpg

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.

fpscumulative.jpg

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.

fpsauto.jpg

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...

fpskeys.jpg

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 by sbsmac

Share this post


Link to post
Share on other sites

Going to try it right now, thanks mac!

Share this post


Link to post
Share on other sites

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...

fps_beta.jpg

Share this post


Link to post
Share on other sites

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

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
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

*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 by sbsmac

Share this post


Link to post
Share on other sites
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

Brilliant work sbsmac! Time for a test-frenzy. :)

Share this post


Link to post
Share on other sites

Man you people are damn smart! :p Incredible tool.

Share this post


Link to post
Share on other sites

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

>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 by sbsmac

Share this post


Link to post
Share on other sites

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

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

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

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

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

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

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

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

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

-> 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

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
Sign in to follow this  

×