From 49c909e0ae62643b087bb16eba973c4d7320c8b9 Mon Sep 17 00:00:00 2001 From: mikeyd Date: Fri, 27 Mar 2015 13:22:44 -0400 Subject: [PATCH 01/14] Correction to fps example command `showfps on` does not exist. Per the help command, `fpsshow` is correct. --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 317fbf5..afcbe5f 100644 --- a/README.md +++ b/README.md @@ -126,7 +126,7 @@ Run vogl w/ SSH on SteamOS * Run various commands: * `help` * `status` - * `showfps on` + * `fpsshow on` * `game start 440` * etc. From 7d80220ab262e6e4a1a82407fb8958f28691dc9b Mon Sep 17 00:00:00 2001 From: mikeyd Date: Sun, 24 May 2015 22:33:00 -0400 Subject: [PATCH 02/14] added missing dependency --- README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index afcbe5f..ca11674 100644 --- a/README.md +++ b/README.md @@ -52,10 +52,10 @@ Building voglperf on SteamOS - Click **"Terminal"** icon. - Type **`passwd`** and enter a password. - Install build packages: - * `sudo apt-get install steamos-dev ` + * `sudo apt-get install steamos-dev` * `echo "deb http://ftp.debian.org/debian wheezy main contrib non-free" | sudo tee -a /etc/apt/sources.list` * `sudo apt-get update` - * `sudo apt-get install git ca-certificates cmake g++ gcc-multilib g++-multilib` + * `sudo apt-get install git ca-certificates cmake g++ gcc-multilib g++-multilib ncurses-dev` * `sudo apt-get install mesa-common-dev libedit-dev libtinfo-dev libtinfo-dev:i386` - Get the volgperf source: From 4d96e7bca6c7184da2748c45a61c8a541443bb62 Mon Sep 17 00:00:00 2001 From: mikeyd Date: Sun, 24 May 2015 22:35:41 -0400 Subject: [PATCH 03/14] Update README.md --- README.md | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/README.md b/README.md index ca11674..480b7eb 100644 --- a/README.md +++ b/README.md @@ -55,8 +55,7 @@ Building voglperf on SteamOS * `sudo apt-get install steamos-dev` * `echo "deb http://ftp.debian.org/debian wheezy main contrib non-free" | sudo tee -a /etc/apt/sources.list` * `sudo apt-get update` - * `sudo apt-get install git ca-certificates cmake g++ gcc-multilib g++-multilib ncurses-dev` - * `sudo apt-get install mesa-common-dev libedit-dev libtinfo-dev libtinfo-dev:i386` + * `sudo apt-get install git ca-certificates cmake g++ gcc-multilib g++-multilib ncurses-dev mesa-common-dev libedit-dev libtinfo-dev libtinfo-dev:i386` - Get the volgperf source: * `git clone https://github.com/ValveSoftware/voglperf.git` From 2baf8e796d5b416ad4505bf320934c90f0170f93 Mon Sep 17 00:00:00 2001 From: mikeyd Date: Sun, 24 May 2015 22:38:16 -0400 Subject: [PATCH 04/14] Update README.md --- README.md | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index 480b7eb..2a06cef 100644 --- a/README.md +++ b/README.md @@ -52,10 +52,13 @@ Building voglperf on SteamOS - Click **"Terminal"** icon. - Type **`passwd`** and enter a password. - Install build packages: - * `sudo apt-get install steamos-dev` - * `echo "deb http://ftp.debian.org/debian wheezy main contrib non-free" | sudo tee -a /etc/apt/sources.list` - * `sudo apt-get update` - * `sudo apt-get install git ca-certificates cmake g++ gcc-multilib g++-multilib ncurses-dev mesa-common-dev libedit-dev libtinfo-dev libtinfo-dev:i386` + ``` + sudo apt-get install steamos-dev + echo "deb http://ftp.debian.org/debian wheezy main contrib non-free" | sudo tee -a /etc/apt/sources.list + sudo apt-get update + sudo apt-get install git ca-certificates cmake g++ gcc-multilib g++-multilib + sudo apt-get install ncurses-dev mesa-common-dev libedit-dev libtinfo-dev libtinfo-dev:i386 + ``` - Get the volgperf source: * `git clone https://github.com/ValveSoftware/voglperf.git` From 8db307246b90bebd93a94e22c6bf5c586bf484f1 Mon Sep 17 00:00:00 2001 From: ProdessorKaos64 Date: Tue, 23 Feb 2016 17:27:04 -0500 Subject: [PATCH 05/14] add starter debian files --- debian/LICENSE | 24 ++++++++++++++++++++++++ debian/changelog | 1 + debian/compat | 1 + debian/control | 15 +++++++++++++++ debian/install | 1 + debian/rules | 4 ++++ debian/source/format | 1 + 7 files changed, 47 insertions(+) create mode 100644 debian/LICENSE create mode 100644 debian/changelog create mode 100644 debian/compat create mode 100644 debian/control create mode 100644 debian/install create mode 100755 debian/rules create mode 100644 debian/source/format diff --git a/debian/LICENSE b/debian/LICENSE new file mode 100644 index 0000000..2f5923c --- /dev/null +++ b/debian/LICENSE @@ -0,0 +1,24 @@ + VOGLPERF CODE LICENSE + + Copyright 2013-2014 RAD Game Tools and Valve Software + All Rights Reserved. + + Permission is hereby granted, free of charge, to any person obtaining a copy + of this software and associated documentation files (the "Software"), to deal + in the Software without restriction, including without limitation the rights + to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + copies of the Software, and to permit persons to whom the Software is + furnished to do so, subject to the following conditions: + + The above copyright notice and this permission notice shall be included in + all copies or substantial portions of the Software. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + THE SOFTWARE. + + diff --git a/debian/changelog b/debian/changelog new file mode 100644 index 0000000..8b13789 --- /dev/null +++ b/debian/changelog @@ -0,0 +1 @@ + diff --git a/debian/compat b/debian/compat new file mode 100644 index 0000000..ec63514 --- /dev/null +++ b/debian/compat @@ -0,0 +1 @@ +9 diff --git a/debian/control b/debian/control new file mode 100644 index 0000000..c7d96e4 --- /dev/null +++ b/debian/control @@ -0,0 +1,15 @@ +Source: voglperf +Section: utils +Priority: extra +Maintainer: SteamOS-Tools Signing Key +Build-Depends: debhelper (>= 9) +Standards-Version: 3.9.5 +Homepage: http://github.com/ProfessorKaos64/voglperf +Vcs-Git: git://github.com/ProfessorKaos64/voglperf +Vcs-Browser: http://github.com/ProfessorKaos64/voglperf + +Package: voglperf +Architecture: all +Depends: curl +Description: voglperf Benchmarking tool for Linux OpenGL game. + Spews frame information every second. diff --git a/debian/install b/debian/install new file mode 100644 index 0000000..be3c2d7 --- /dev/null +++ b/debian/install @@ -0,0 +1 @@ +voglperf /usr/bin/ diff --git a/debian/rules b/debian/rules new file mode 100755 index 0000000..2d33f6a --- /dev/null +++ b/debian/rules @@ -0,0 +1,4 @@ +#!/usr/bin/make -f + +%: + dh $@ diff --git a/debian/source/format b/debian/source/format new file mode 100644 index 0000000..89ae9db --- /dev/null +++ b/debian/source/format @@ -0,0 +1 @@ +3.0 (native) From f72ba86f89582cc4b372da1f50ee3ef050c95b35 Mon Sep 17 00:00:00 2001 From: mikeyd Date: Tue, 23 Feb 2016 17:29:19 -0500 Subject: [PATCH 06/14] add 32bit and 64 bit install targets --- debian/install | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/debian/install b/debian/install index be3c2d7..4b6bb62 100644 --- a/debian/install +++ b/debian/install @@ -1 +1,2 @@ -voglperf /usr/bin/ +voglperf32 /usr/bin/ +voglperf64 /usr/bin/ From 87c773b64eb7d5ac52b098b8e4cf0a2ca6872ef1 Mon Sep 17 00:00:00 2001 From: mikeyd Date: Tue, 23 Feb 2016 17:31:17 -0500 Subject: [PATCH 07/14] add build deps --- debian/control | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/debian/control b/debian/control index c7d96e4..756ab51 100644 --- a/debian/control +++ b/debian/control @@ -2,7 +2,19 @@ Source: voglperf Section: utils Priority: extra Maintainer: SteamOS-Tools Signing Key -Build-Depends: debhelper (>= 9) +Build-Depends: debhelper (>= 9), + steamos-dev, + ca-certificates, + cmake, + g++, + gcc-multilib, + g++-multilib, + ncurses-dev, + mesa-common-dev, + libedit-dev, + libtinfo-dev, + libtinfo-dev:i386 +sudo apt-get install ncurses-dev mesa-common-dev libedit-dev libtinfo-dev libtinfo-dev:i386 Standards-Version: 3.9.5 Homepage: http://github.com/ProfessorKaos64/voglperf Vcs-Git: git://github.com/ProfessorKaos64/voglperf From ae55d69f690a617b7c38b340f78be90509559c52 Mon Sep 17 00:00:00 2001 From: mikeyd Date: Tue, 23 Feb 2016 17:33:41 -0500 Subject: [PATCH 08/14] syntax error --- debian/control | 1 - 1 file changed, 1 deletion(-) diff --git a/debian/control b/debian/control index 756ab51..5bcab3e 100644 --- a/debian/control +++ b/debian/control @@ -14,7 +14,6 @@ Build-Depends: debhelper (>= 9), libedit-dev, libtinfo-dev, libtinfo-dev:i386 -sudo apt-get install ncurses-dev mesa-common-dev libedit-dev libtinfo-dev libtinfo-dev:i386 Standards-Version: 3.9.5 Homepage: http://github.com/ProfessorKaos64/voglperf Vcs-Git: git://github.com/ProfessorKaos64/voglperf From 0bbad095ea8203fc61e5b6d972131d971cdfdf83 Mon Sep 17 00:00:00 2001 From: David0rk Date: Mon, 23 May 2016 21:34:47 -0400 Subject: [PATCH 09/14] Update README.md --- README.md | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/README.md b/README.md index 317fbf5..0591fb4 100644 --- a/README.md +++ b/README.md @@ -23,6 +23,12 @@ Can also write frame times to a log file which can then be graphed with gnuplot, 0.29 0.29 ... +Dependencies +------------ +libboost-thread-dev +libsdl2-dev +build-essential +The above appears to be the minimum for *buntu derivatives Building -------- From 08f1bcb82efa5c8ac73cd142e989fc9d37c1a9f4 Mon Sep 17 00:00:00 2001 From: David0rk Date: Mon, 23 May 2016 21:35:23 -0400 Subject: [PATCH 10/14] Update README.md --- README.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/README.md b/README.md index 0591fb4..8a41cdd 100644 --- a/README.md +++ b/README.md @@ -26,8 +26,11 @@ Can also write frame times to a log file which can then be graphed with gnuplot, Dependencies ------------ libboost-thread-dev + libsdl2-dev + build-essential + The above appears to be the minimum for *buntu derivatives Building From 197c592c1e354ac7d8f6213831cbb0fd5bcc4bd9 Mon Sep 17 00:00:00 2001 From: David0rk Date: Mon, 23 May 2016 21:36:25 -0400 Subject: [PATCH 11/14] added info about dependencies --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 8a41cdd..fad65b3 100644 --- a/README.md +++ b/README.md @@ -31,7 +31,7 @@ libsdl2-dev build-essential -The above appears to be the minimum for *buntu derivatives +The above appears to be the minimum required to get voglperf to build on xubuntu 16.04 Building -------- From bc7f64fefc53f104fb6f5b00609a59e14937bd1f Mon Sep 17 00:00:00 2001 From: David Lambert Date: Thu, 26 May 2016 17:09:20 -0400 Subject: [PATCH 12/14] minor tweaks --- src/voglperf.c | 2 +- src/voglperfrun.cpp | 7 ++++--- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/src/voglperf.c b/src/voglperf.c index d271e28..1403115 100644 --- a/src/voglperf.c +++ b/src/voglperf.c @@ -595,7 +595,7 @@ static void voglperf_swap_buffers(Display *dpy, GLXDrawable drawable, int flush_ if (g_logfile_fd != -1) { // Add this frame time to our logfile. - snprintf(g_logfile_buf + g_logfile_buf_len, sizeof(g_logfile_buf) - g_logfile_buf_len, "%.2f\n", time_frame * g_rcpMILLION); + snprintf(g_logfile_buf + g_logfile_buf_len, sizeof(g_logfile_buf) - g_logfile_buf_len, "%.2f, %.2f\n", time_frame * (g_rcpMILLION,s_frameinfo.frame_count * (double)g_BILLION / s_frameinfo.time_benchmark)); g_logfile_buf_len += strlen(g_logfile_buf + g_logfile_buf_len); } diff --git a/src/voglperfrun.cpp b/src/voglperfrun.cpp index aca4bc6..84858f8 100644 --- a/src/voglperfrun.cpp +++ b/src/voglperfrun.cpp @@ -729,9 +729,10 @@ static void update_app_messages(voglperf_data_t &data) app_finished = true; } else if (data.flags & F_FPSPRINT) - { - webby_ws_printf("%.2f fps frames:%u time:%.2fms min:%.2fms max:%.2fms\n", - mbuf_fps.fps, mbuf_fps.frame_count, mbuf_fps.frame_time, mbuf_fps.frame_min, mbuf_fps.frame_max); + { + //overlay output + webby_ws_printf("%.2f fps FT%.2fms FTMin:%.2fms FTMax:%.2fms\n", + mbuf_fps.fps, mbuf_fps.frame_time, mbuf_fps.frame_min, mbuf_fps.frame_max); } } From a0e992209a9f19f2afce6b7af08f68d0ba577114 Mon Sep 17 00:00:00 2001 From: David Lambert Date: Thu, 26 May 2016 17:45:52 -0400 Subject: [PATCH 13/14] added notes, fixed logging bug from last commit --- src/notes | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) create mode 100644 src/notes diff --git a/src/notes b/src/notes new file mode 100644 index 0000000..5ce8358 --- /dev/null +++ b/src/notes @@ -0,0 +1,18 @@ +1000/average frame time = fps adjusted for average frame time. + +stdev(fps) = how "flaky" the fps is, good measure of whether or not the game runs "well/stable" +stdev (frame times) = same as aboveish, engine efficiency. + + +todo: + +remove 2 lines @ start of log (pulseaudio?? x64 ) + mitigate the -nan value for fps @ start, maybe trim first 3 lines? + +add hwinfo @ end of log for automated report/testing for easy reposting/sharing. + +possibly auto parse logs? + +min/max/avg/stdev for frametime * fps. + +logfiles go to home instead of tmp/ or allow user specify. From bf9b779406f8f140258dfb030af421305f8f48c8 Mon Sep 17 00:00:00 2001 From: David Lambert Date: Thu, 26 May 2016 17:48:29 -0400 Subject: [PATCH 14/14] added notes, fixed logging bug from last commit --- src/voglperf.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/voglperf.c b/src/voglperf.c index 1403115..803db9a 100644 --- a/src/voglperf.c +++ b/src/voglperf.c @@ -595,8 +595,10 @@ static void voglperf_swap_buffers(Display *dpy, GLXDrawable drawable, int flush_ if (g_logfile_fd != -1) { // Add this frame time to our logfile. - snprintf(g_logfile_buf + g_logfile_buf_len, sizeof(g_logfile_buf) - g_logfile_buf_len, "%.2f, %.2f\n", time_frame * (g_rcpMILLION,s_frameinfo.frame_count * (double)g_BILLION / s_frameinfo.time_benchmark)); + snprintf(g_logfile_buf + g_logfile_buf_len, sizeof(g_logfile_buf) - g_logfile_buf_len, "%.2f, %.2f\n", time_frame * g_rcpMILLION, s_frameinfo.frame_count * (double)g_BILLION / s_frameinfo.time_benchmark); g_logfile_buf_len += strlen(g_logfile_buf + g_logfile_buf_len); + + } // If this time would push our total benchmark time over 1 second, spew out the benchmark data.