{"id":1651,"date":"2024-06-27T07:53:56","date_gmt":"2024-06-27T07:53:56","guid":{"rendered":"https:\/\/www.hammerdb.com\/blog\/?p=1651"},"modified":"2024-06-27T09:57:07","modified_gmt":"2024-06-27T09:57:07","slug":"hammerdb-v4-11-new-features-performance-profiles-for-tproc-c-workloads","status":"publish","type":"post","link":"https:\/\/www.hammerdb.com\/blog\/uncategorized\/hammerdb-v4-11-new-features-performance-profiles-for-tproc-c-workloads\/","title":{"rendered":"HammerDB v4.11 New Features: Performance Profiles for TPROC-C Workloads"},"content":{"rendered":"<p>Arguably, the most common beginning errors with database benchmarking is for a user to select a single point of utilisation (usually overconfigured)\u00a0 and then extrapolate conclusions about system performance from this single point. Instead, HammerDB has always encouraged the building of <a href=\"https:\/\/www.hammerdb.com\/blog\/uncategorized\/hammerdb-using-mysql-5-7-vs-8-0-to-understand-performance-profiles\/\">performance profiles<\/a> to fully understand how a database system behaves.<\/p>\n<p>HammerDB v4.11 automates this practice by introducing the concept of performance profiles for TPROC-C workloads. This functionality available with both GUI and CLI enables you to group a number of related TPROC-C workloads together to build a profile across multiple benchmarks.<\/p>\n<p>Typically, this functionality will be used with an automated workload where you have defined an increasing sequence of Virtual Users to identify the levels of peak performance on a system or compare different software and hardware configurations.\u00a0 The performance profile allows you to group these related TPROC-C workloads together with a single profile ID.<\/p>\n<p>By default, the performance profile ID is set to 0 meaning that a particular HammerDB job is not related to other jobs and by setting this profile ID to a positive integer then groups all jobs with the same number together.<\/p>\n<h2>Using Performance Profiles with Autopilot<\/h2>\n<p>In the GUI, when jobs are enabled, there is the new option of performance profile ID. To activate performance profiles set this ID to a positive value with the Job Options dialog.<\/p>\n<p><a href=\"https:\/\/www.hammerdb.com\/blog\/wp-content\/uploads\/2024\/06\/pp1.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-1653\" src=\"https:\/\/www.hammerdb.com\/blog\/wp-content\/uploads\/2024\/06\/pp1.png\" alt=\"\" width=\"451\" height=\"351\" srcset=\"https:\/\/www.hammerdb.com\/blog\/wp-content\/uploads\/2024\/06\/pp1.png 537w, https:\/\/www.hammerdb.com\/blog\/wp-content\/uploads\/2024\/06\/pp1-300x234.png 300w\" sizes=\"auto, (max-width: 451px) 100vw, 451px\" \/><\/a><\/p>\n<p>As this setting is related to automated workloads the same setting is also available in the Autopilot options.<\/p>\n<p><a href=\"https:\/\/www.hammerdb.com\/blog\/wp-content\/uploads\/2024\/06\/ppid2.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-1654\" src=\"https:\/\/www.hammerdb.com\/blog\/wp-content\/uploads\/2024\/06\/ppid2.png\" alt=\"\" width=\"451\" height=\"326\" srcset=\"https:\/\/www.hammerdb.com\/blog\/wp-content\/uploads\/2024\/06\/ppid2.png 715w, https:\/\/www.hammerdb.com\/blog\/wp-content\/uploads\/2024\/06\/ppid2-300x217.png 300w\" sizes=\"auto, (max-width: 451px) 100vw, 451px\" \/><\/a><\/p>\n<p>Then run an autopilot sequence exactly as before.<\/p>\n<p><a href=\"https:\/\/www.hammerdb.com\/blog\/wp-content\/uploads\/2024\/06\/ppid3.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-large wp-image-1655\" src=\"https:\/\/www.hammerdb.com\/blog\/wp-content\/uploads\/2024\/06\/ppid3-1024x799.png\" alt=\"\" width=\"525\" height=\"410\" srcset=\"https:\/\/www.hammerdb.com\/blog\/wp-content\/uploads\/2024\/06\/ppid3-1024x799.png 1024w, https:\/\/www.hammerdb.com\/blog\/wp-content\/uploads\/2024\/06\/ppid3-300x234.png 300w, https:\/\/www.hammerdb.com\/blog\/wp-content\/uploads\/2024\/06\/ppid3-768x599.png 768w, https:\/\/www.hammerdb.com\/blog\/wp-content\/uploads\/2024\/06\/ppid3.png 1224w\" sizes=\"auto, (max-width: 525px) 100vw, 525px\" \/><\/a><\/p>\n<p>When the run has completed, <a href=\"https:\/\/www.hammerdb.com\/blog\/uncategorized\/hammerdb-v4-8-new-features-viewing-your-benchmark-results-with-the-hammerdb-web-service\/\">view your results with the HammerDB web service <\/a>and you will see a new section called Performance Profiles and a profile listed under the ID you have created.\u00a0 The profile lists the number of Jobs grouped under that ID and pinpoints the job with the maximum NOPM and TPM for that job and the number of Active Virtual Users.<\/p>\n<p><a href=\"https:\/\/www.hammerdb.com\/blog\/wp-content\/uploads\/2024\/06\/ppid4.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-large wp-image-1656\" src=\"https:\/\/www.hammerdb.com\/blog\/wp-content\/uploads\/2024\/06\/ppid4-1024x788.png\" alt=\"\" width=\"525\" height=\"404\" srcset=\"https:\/\/www.hammerdb.com\/blog\/wp-content\/uploads\/2024\/06\/ppid4-1024x788.png 1024w, https:\/\/www.hammerdb.com\/blog\/wp-content\/uploads\/2024\/06\/ppid4-300x231.png 300w, https:\/\/www.hammerdb.com\/blog\/wp-content\/uploads\/2024\/06\/ppid4-768x591.png 768w, https:\/\/www.hammerdb.com\/blog\/wp-content\/uploads\/2024\/06\/ppid4.png 1033w\" sizes=\"auto, (max-width: 525px) 100vw, 525px\" \/><\/a><\/p>\n<p>Clicking on the profile ID will show a graph of both NOPM and TPM (both of which can be interactively deselected) allowing you to view the performance profile for your grouped jobs.<\/p>\n<p><a href=\"https:\/\/www.hammerdb.com\/blog\/wp-content\/uploads\/2024\/06\/ppid5.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-large wp-image-1657\" src=\"https:\/\/www.hammerdb.com\/blog\/wp-content\/uploads\/2024\/06\/ppid5-1024x637.png\" alt=\"\" width=\"525\" height=\"327\" srcset=\"https:\/\/www.hammerdb.com\/blog\/wp-content\/uploads\/2024\/06\/ppid5-1024x637.png 1024w, https:\/\/www.hammerdb.com\/blog\/wp-content\/uploads\/2024\/06\/ppid5-300x187.png 300w, https:\/\/www.hammerdb.com\/blog\/wp-content\/uploads\/2024\/06\/ppid5-768x478.png 768w, https:\/\/www.hammerdb.com\/blog\/wp-content\/uploads\/2024\/06\/ppid5.png 1342w\" sizes=\"auto, (max-width: 525px) 100vw, 525px\" \/><\/a><\/p>\n<h2>Using Performance Profiles with the CLI<\/h2>\n<p>In advanced server environments, most users will use scripts to run a performance profile sequence. The equivalent of setting the Performance Profile ID in the GUI is done with the jobs profileid command. Without an argument it will report the current profile ID, by default 0 for no profile and with an integer argument it will set a Profile ID.<\/p>\n<div class=\"dm-code-snippet light default  dm-slim-version\" style=\"background-color:#abb8c3;\" snippet-height=\"\">\n\t\t\t<div class=\"control-language\">\n                <div class=\"dm-buttons\">\n                    <div class=\"dm-buttons-left\">\n                        <div class=\"dm-button-snippet red-button\"><\/div>\n                        <div class=\"dm-button-snippet orange-button\"><\/div>\n                        <div class=\"dm-button-snippet green-button\"><\/div>\n                    <\/div>\n                    <div class=\"dm-buttons-right\">\n                        <a id=\"dm-copy-raw-code\">\n                        <span class=\"dm-copy-text\">Copy Code<\/span>\n                        <span class=\"dm-copy-confirmed\" style=\"display:none\">Copied<\/span>\n                        <span class=\"dm-error-message\" style=\"display:none\">Use a different Browser<\/span><\/a>\n                    <\/div>\n                <\/div>\n                <pre class=\"no-line-numbers\"><code id=\"dm-code-raw\" class=\"no-wrap language-php\"><\/p>\n<pre class=\"dm-pre-admin-side\">hammerdb&gt;jobs profileid Performance profile id set to 0\r\n\r\nhammerdb&gt;jobs profileid 1 Setting performance profile id to 1\r\n\r\nhammerdb&gt;jobs profileid Performance profile id set to 1<\/pre>\n<p><\/code><\/pre>\n\t\t\t<\/div>\n        <\/div>\n<p>If running a sequence of tests as follows, setting the Profile ID requires just one command before any of the workload is run.<\/p>\n<div class=\"dm-code-snippet light default  dm-slim-version\" style=\"background-color:#abb8c3;\" snippet-height=\"\">\n\t\t\t<div class=\"control-language\">\n                <div class=\"dm-buttons\">\n                    <div class=\"dm-buttons-left\">\n                        <div class=\"dm-button-snippet red-button\"><\/div>\n                        <div class=\"dm-button-snippet orange-button\"><\/div>\n                        <div class=\"dm-button-snippet green-button\"><\/div>\n                    <\/div>\n                    <div class=\"dm-buttons-right\">\n                        <a id=\"dm-copy-raw-code\">\n                        <span class=\"dm-copy-text\">Copy Code<\/span>\n                        <span class=\"dm-copy-confirmed\" style=\"display:none\">Copied<\/span>\n                        <span class=\"dm-error-message\" style=\"display:none\">Use a different Browser<\/span><\/a>\n                    <\/div>\n                <\/div>\n                <pre class=\"no-line-numbers\"><code id=\"dm-code-raw\" class=\"no-wrap language-php\"><\/p>\n<pre class=\"dm-pre-admin-side\">#!\/bin\/tclsh\r\n# maintainer: Pooja Jain\r\n\r\nset tmpdir $::env(TMP)\r\nputs \"SETTING CONFIGURATION\"\r\njobs profileid 1\r\ndbset db maria\r\ndbset bm TPC-C\r\ngiset timeprofile xt_gather_timeout 1200\r\ngiset commandline keepalive_margin 1200\r\n\r\ndiset connection maria_host 127.0.0.1\r\ndiset connection maria_port 3306\r\ndiset connection maria_socket \/tmp\/mariadb.sock\r\n#\r\ndiset tpcc maria_user root\r\ndiset tpcc maria_pass maria\r\ndiset tpcc maria_dbase tpcc\r\ndiset tpcc maria_driver timed\r\ndiset tpcc maria_rampup 2\r\ndiset tpcc maria_duration 5\r\ndiset tpcc maria_no_stored_procs false\r\ndiset tpcc maria_allwarehouse false\r\ndiset tpcc maria_timeprofile true\r\ndiset tpcc maria_purge true\r\n#start CPU\r\nmetstart\r\nputs \"TEST STARTED\"\r\nforeach z { 1 2 4 8 12 16 20 24 28 32 36 40 44 48 52 56 60 64 68 72 76 80 84 88\r\n92 96 100 104 108 112 116 120 } {\r\nloadscript\r\nvuset vu $z\r\nvuset logtotemp 1\r\nvucreate\r\ntcstart\r\ntcstatus\r\nvurun\r\ntcstop\r\nvudestroy\r\n}\r\nmetstop\r\nputs \"TEST COMPLETE\"<\/pre>\n<p><\/code><\/pre>\n\t\t\t<\/div>\n        <\/div>\n<p>Running the webservice will then show the performance profile<\/p>\n<p><a href=\"https:\/\/www.hammerdb.com\/blog\/wp-content\/uploads\/2024\/06\/ppid6.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-1661\" src=\"https:\/\/www.hammerdb.com\/blog\/wp-content\/uploads\/2024\/06\/ppid6.png\" alt=\"\" width=\"976\" height=\"898\" srcset=\"https:\/\/www.hammerdb.com\/blog\/wp-content\/uploads\/2024\/06\/ppid6.png 976w, https:\/\/www.hammerdb.com\/blog\/wp-content\/uploads\/2024\/06\/ppid6-300x276.png 300w, https:\/\/www.hammerdb.com\/blog\/wp-content\/uploads\/2024\/06\/ppid6-768x707.png 768w\" sizes=\"auto, (max-width: 767px) 89vw, (max-width: 1000px) 54vw, (max-width: 1071px) 543px, 580px\" \/><\/a><\/p>\n<p>and clicking on the Profile ID the graph of the NOPM and TPM for all of the jobs under that ID.<\/p>\n<p><a href=\"https:\/\/www.hammerdb.com\/blog\/wp-content\/uploads\/2024\/06\/ppid7.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-1662\" src=\"https:\/\/www.hammerdb.com\/blog\/wp-content\/uploads\/2024\/06\/ppid7.png\" alt=\"\" width=\"958\" height=\"715\" srcset=\"https:\/\/www.hammerdb.com\/blog\/wp-content\/uploads\/2024\/06\/ppid7.png 958w, https:\/\/www.hammerdb.com\/blog\/wp-content\/uploads\/2024\/06\/ppid7-300x224.png 300w, https:\/\/www.hammerdb.com\/blog\/wp-content\/uploads\/2024\/06\/ppid7-768x573.png 768w\" sizes=\"auto, (max-width: 767px) 89vw, (max-width: 1000px) 54vw, (max-width: 1071px) 543px, 580px\" \/><\/a><\/p>\n<p>The CLI also adds a jobs profile command that will report the results of jobs with the profile ID specified.<\/p>\n<div class=\"dm-code-snippet light default  dm-slim-version\" style=\"background-color:#abb8c3;\" snippet-height=\"\">\n\t\t\t<div class=\"control-language\">\n                <div class=\"dm-buttons\">\n                    <div class=\"dm-buttons-left\">\n                        <div class=\"dm-button-snippet red-button\"><\/div>\n                        <div class=\"dm-button-snippet orange-button\"><\/div>\n                        <div class=\"dm-button-snippet green-button\"><\/div>\n                    <\/div>\n                    <div class=\"dm-buttons-right\">\n                        <a id=\"dm-copy-raw-code\">\n                        <span class=\"dm-copy-text\">Copy Code<\/span>\n                        <span class=\"dm-copy-confirmed\" style=\"display:none\">Copied<\/span>\n                        <span class=\"dm-error-message\" style=\"display:none\">Use a different Browser<\/span><\/a>\n                    <\/div>\n                <\/div>\n                <pre class=\"no-line-numbers\"><code id=\"dm-code-raw\" class=\"no-wrap language-php\"><\/p>\n<pre class=\"dm-pre-admin-side\">hammerdb&gt;job profile 1\r\n{\r\n\"66686B0D61A903E233236323\": {\r\n\"db\": \"MariaDB\",\r\n\"bm\": \"TPC-C\",\r\n\"tstamp\": \"2024-06-11 08:19:41\",\r\n\"activevu\": \"1\",\r\n\"nopm\": \"16254\",\r\n\"tpm\": \"37709\"\r\n},\r\n\"66686CB661A903E243430373\": {\r\n\"db\": \"MariaDB\",\r\n\"bm\": \"TPC-C\",\r\n\"tstamp\": \"2024-06-11 08:26:46\",\r\n\"activevu\": \"2\",\r\n\"nopm\": \"35434\",\r\n\"tpm\": \"82497\"\r\n},\r\n\"66686E6161A903E263536313\": {\r\n\"db\": \"MariaDB\",\r\n\"bm\": \"TPC-C\",\r\n\"tstamp\": \"2024-06-11 08:33:53\",\r\n\"activevu\": \"4\",\r\n\"nopm\": \"71549\",\r\n\"tpm\": \"166405\"\r\n},\r\n\"6668700E61A903E283834363\": {\r\n\"db\": \"MariaDB\",\r\n\"bm\": \"TPC-C\",\r\n\"tstamp\": \"2024-06-11 08:41:02\",\r\n\"activevu\": \"8\",\r\n\"nopm\": \"135774\",\r\n\"tpm\": \"316012\"\r\n},\r\n\"666871C161A903E203230333\": {\r\n\"db\": \"MariaDB\",\r\n\"bm\": \"TPC-C\",\r\n\"tstamp\": \"2024-06-11 08:48:17\",\r\n\"activevu\": \"12\",\r\n\"nopm\": \"196216\",\r\n\"tpm\": \"455867\"\r\n},\r\n\"6668737A61A903E283131383\": {\r\n\"db\": \"MariaDB\",\r\n\"bm\": \"TPC-C\",\r\n\"tstamp\": \"2024-06-11 08:55:38\",\r\n\"activevu\": \"16\",\r\n\"nopm\": \"258999\",\r\n\"tpm\": \"601697\"\r\n},\r\n\"6668753861A903E283437363\": {\r\n\"db\": \"MariaDB\",\r\n\"bm\": \"TPC-C\",\r\n\"tstamp\": \"2024-06-11 09:03:04\",\r\n\"activevu\": \"20\",\r\n\"nopm\": \"310608\",\r\n\"tpm\": \"721658\"\r\n},\r\n\"666876FB61A903E293532383\": {\r\n\"db\": \"MariaDB\",\r\n\"bm\": \"TPC-C\",\r\n\"tstamp\": \"2024-06-11 09:10:35\",\r\n\"activevu\": \"24\",\r\n\"nopm\": \"358359\",\r\n\"tpm\": \"832467\"\r\n},\r\n\"666878C361A903E203836353\": {\r\n\"db\": \"MariaDB\",\r\n\"bm\": \"TPC-C\",\r\n\"tstamp\": \"2024-06-11 09:18:11\",\r\n\"activevu\": \"28\",\r\n\"nopm\": \"399416\",\r\n\"tpm\": \"928993\"\r\n},\r\n\"66687A8E61A903E213737353\": {\r\n\"db\": \"MariaDB\",\r\n\"bm\": \"TPC-C\",\r\n\"tstamp\": \"2024-06-11 09:25:50\",\r\n\"activevu\": \"32\",\r\n\"nopm\": \"438920\",\r\n\"tpm\": \"1018825\"\r\n},\r\n\"66687C5E61A903E263536313\": {\r\n\"db\": \"MariaDB\",\r\n\"bm\": \"TPC-C\",\r\n\"tstamp\": \"2024-06-11 09:33:34\",\r\n\"activevu\": \"36\",\r\n\"nopm\": \"471456\",\r\n\"tpm\": \"1095396\"\r\n},\r\n\"66687E2961A903E263635343\": {\r\n\"db\": \"MariaDB\",\r\n\"bm\": \"TPC-C\",\r\n\"tstamp\": \"2024-06-11 09:41:13\",\r\n\"activevu\": \"40\",\r\n\"nopm\": \"522600\",\r\n\"tpm\": \"1213621\"\r\n},\r\n\"66687FF761AA03E293130303\": {\r\n\"db\": \"MariaDB\",\r\n\"bm\": \"TPC-C\",\r\n\"tstamp\": \"2024-06-11 09:48:55\",\r\n\"activevu\": \"44\",\r\n\"nopm\": \"548843\",\r\n\"tpm\": \"1275641\"\r\n},\r\n\"666881CE61AA03E283137393\": {\r\n\"db\": \"MariaDB\",\r\n\"bm\": \"TPC-C\",\r\n\"tstamp\": \"2024-06-11 09:56:46\",\r\n\"activevu\": \"48\",\r\n\"nopm\": \"569173\",\r\n\"tpm\": \"1322266\"\r\n},\r\n\"666883A861AA03E293734373\": {\r\n\"db\": \"MariaDB\",\r\n\"bm\": \"TPC-C\",\r\n\"tstamp\": \"2024-06-11 10:04:40\",\r\n\"activevu\": \"52\",\r\n\"nopm\": \"591268\",\r\n\"tpm\": \"1373413\"\r\n},\r\n\"6668858561AA03E223038303\": {\r\n\"db\": \"MariaDB\",\r\n\"bm\": \"TPC-C\",\r\n\"tstamp\": \"2024-06-11 10:12:37\",\r\n\"activevu\": \"56\",\r\n\"nopm\": \"609316\",\r\n\"tpm\": \"1415349\"\r\n},\r\n\"6668877161AA03E243737363\": {\r\n\"db\": \"MariaDB\",\r\n\"bm\": \"TPC-C\",\r\n\"tstamp\": \"2024-06-11 10:20:49\",\r\n\"activevu\": \"60\",\r\n\"nopm\": \"628853\",\r\n\"tpm\": \"1462056\"\r\n},\r\n\"6668896861AA03E253531393\": {\r\n\"db\": \"MariaDB\",\r\n\"bm\": \"TPC-C\",\r\n\"tstamp\": \"2024-06-11 10:29:12\",\r\n\"activevu\": \"64\",\r\n\"nopm\": \"642036\",\r\n\"tpm\": \"1491259\"\r\n},\r\n\"66688B6861AA03E203133313\": {\r\n\"db\": \"MariaDB\",\r\n\"bm\": \"TPC-C\",\r\n\"tstamp\": \"2024-06-11 10:37:44\",\r\n\"activevu\": \"68\",\r\n\"nopm\": \"656450\",\r\n\"tpm\": \"1524772\"\r\n},\r\n\"66688D7161AA03E293331363\": {\r\n\"db\": \"MariaDB\",\r\n\"bm\": \"TPC-C\",\r\n\"tstamp\": \"2024-06-11 10:46:25\",\r\n\"activevu\": \"72\",\r\n\"nopm\": \"661515\",\r\n\"tpm\": \"1536318\"\r\n},\r\n\"66688F8361AA03E203331333\": {\r\n\"db\": \"MariaDB\",\r\n\"bm\": \"TPC-C\",\r\n\"tstamp\": \"2024-06-11 10:55:15\",\r\n\"activevu\": \"76\",\r\n\"nopm\": \"670828\",\r\n\"tpm\": \"1557467\"\r\n},\r\n\"6668919E61AA03E263931383\": {\r\n\"db\": \"MariaDB\",\r\n\"bm\": \"TPC-C\",\r\n\"tstamp\": \"2024-06-11 11:04:14\",\r\n\"activevu\": \"80\",\r\n\"nopm\": \"672855\",\r\n\"tpm\": \"1563938\"\r\n},\r\n\"666893BF61AA03E213631303\": {\r\n\"db\": \"MariaDB\",\r\n\"bm\": \"TPC-C\",\r\n\"tstamp\": \"2024-06-11 11:13:19\",\r\n\"activevu\": \"84\",\r\n\"nopm\": \"680334\",\r\n\"tpm\": \"1580944\"\r\n},\r\n\"666895E761AA03E253330363\": {\r\n\"db\": \"MariaDB\",\r\n\"bm\": \"TPC-C\",\r\n\"tstamp\": \"2024-06-11 11:22:31\",\r\n\"activevu\": \"88\",\r\n\"nopm\": \"685096\",\r\n\"tpm\": \"1590859\"\r\n},\r\n\"6668981461AA03E213832303\": {\r\n\"db\": \"MariaDB\",\r\n\"bm\": \"TPC-C\",\r\n\"tstamp\": \"2024-06-11 11:31:48\",\r\n\"activevu\": \"92\",\r\n\"nopm\": \"680334\",\r\n\"tpm\": \"1580664\"\r\n},\r\n\"66689A4661AA03E213938343\": {\r\n\"db\": \"MariaDB\",\r\n\"bm\": \"TPC-C\",\r\n\"tstamp\": \"2024-06-11 11:41:10\",\r\n\"activevu\": \"96\",\r\n\"nopm\": \"679016\",\r\n\"tpm\": \"1577343\"\r\n},\r\n\"66689C7E61AA03E213730313\": {\r\n\"db\": \"MariaDB\",\r\n\"bm\": \"TPC-C\",\r\n\"tstamp\": \"2024-06-11 11:50:38\",\r\n\"activevu\": \"100\",\r\n\"nopm\": \"678694\",\r\n\"tpm\": \"1577827\"\r\n},\r\n\"66689EB561AA03E233739373\": {\r\n\"db\": \"MariaDB\",\r\n\"bm\": \"TPC-C\",\r\n\"tstamp\": \"2024-06-11 12:00:05\",\r\n\"activevu\": \"104\",\r\n\"nopm\": \"674706\",\r\n\"tpm\": \"1566707\"\r\n},\r\n\"6668A0F461AA03E243230353\": {\r\n\"db\": \"MariaDB\",\r\n\"bm\": \"TPC-C\",\r\n\"tstamp\": \"2024-06-11 12:09:40\",\r\n\"activevu\": \"108\",\r\n\"nopm\": \"670643\",\r\n\"tpm\": \"1557979\"\r\n},\r\n\"6668A33361AA03E293836323\": {\r\n\"db\": \"MariaDB\",\r\n\"bm\": \"TPC-C\",\r\n\"tstamp\": \"2024-06-11 12:19:15\",\r\n\"activevu\": \"112\",\r\n\"nopm\": \"665293\",\r\n\"tpm\": \"1545308\"\r\n},\r\n\"6668A57A61AA03E203433363\": {\r\n\"db\": \"MariaDB\",\r\n\"bm\": \"TPC-C\",\r\n\"tstamp\": \"2024-06-11 12:28:58\",\r\n\"activevu\": \"116\",\r\n\"nopm\": \"661495\",\r\n\"tpm\": \"1536360\"\r\n},\r\n\"6668A7CF61AA03E253833343\": {\r\n\"db\": \"MariaDB\",\r\n\"bm\": \"TPC-C\",\r\n\"tstamp\": \"2024-06-11 12:38:55\",\r\n\"activevu\": \"120\",\r\n\"nopm\": \"655745\",\r\n\"tpm\": \"1523566\"\r\n}\r\n}<\/pre>\n<p><\/code><\/pre>\n\t\t\t<\/div>\n        <\/div>\n<h2>Performance Profiles Summary<\/h2>\n<p>With the new performance profile, functionality HammerDB enables you to group related TPROC-C jobs under an ID and use it to compare performance across benchmarks at different levels of utilisation and different configurations.<\/p>\n<p><a href=\"https:\/\/www.hammerdb.com\/blog\/wp-content\/uploads\/2024\/06\/profile1.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-large wp-image-1665\" src=\"https:\/\/www.hammerdb.com\/blog\/wp-content\/uploads\/2024\/06\/profile1.png\" alt=\"\" width=\"525\" height=\"67\" srcset=\"https:\/\/www.hammerdb.com\/blog\/wp-content\/uploads\/2024\/06\/profile1.png 970w, https:\/\/www.hammerdb.com\/blog\/wp-content\/uploads\/2024\/06\/profile1-300x38.png 300w, https:\/\/www.hammerdb.com\/blog\/wp-content\/uploads\/2024\/06\/profile1-768x98.png 768w\" sizes=\"auto, (max-width: 525px) 100vw, 525px\" \/><\/a><\/p>\n<p>The profile ID chart will show performance for each individual profile.<\/p>\n<p><a href=\"https:\/\/www.hammerdb.com\/blog\/wp-content\/uploads\/2024\/06\/profile2.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-large wp-image-1664\" src=\"https:\/\/www.hammerdb.com\/blog\/wp-content\/uploads\/2024\/06\/profile2-1024x706.png\" alt=\"\" width=\"525\" height=\"362\" srcset=\"https:\/\/www.hammerdb.com\/blog\/wp-content\/uploads\/2024\/06\/profile2-1024x706.png 1024w, https:\/\/www.hammerdb.com\/blog\/wp-content\/uploads\/2024\/06\/profile2-300x207.png 300w, https:\/\/www.hammerdb.com\/blog\/wp-content\/uploads\/2024\/06\/profile2-768x529.png 768w, https:\/\/www.hammerdb.com\/blog\/wp-content\/uploads\/2024\/06\/profile2.png 1081w\" sizes=\"auto, (max-width: 525px) 100vw, 525px\" \/><\/a><\/p>\n<p>And you can then quickly pinpoint specific jobs and drill down into their performance characteristics.<\/p>\n<p><a href=\"https:\/\/www.hammerdb.com\/blog\/wp-content\/uploads\/2024\/06\/profile3.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-1666\" src=\"https:\/\/www.hammerdb.com\/blog\/wp-content\/uploads\/2024\/06\/profile3.png\" alt=\"\" width=\"997\" height=\"748\" srcset=\"https:\/\/www.hammerdb.com\/blog\/wp-content\/uploads\/2024\/06\/profile3.png 997w, https:\/\/www.hammerdb.com\/blog\/wp-content\/uploads\/2024\/06\/profile3-300x225.png 300w, https:\/\/www.hammerdb.com\/blog\/wp-content\/uploads\/2024\/06\/profile3-768x576.png 768w\" sizes=\"auto, (max-width: 767px) 89vw, (max-width: 1000px) 54vw, (max-width: 1071px) 543px, 580px\" \/><\/a><\/p>\n<p>If you are not already building performance profiles manually, then this functionality makes it easier than ever to fully analyze your database performance.<\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Arguably, the most common beginning errors with database benchmarking is for a user to select a single point of utilisation (usually overconfigured)\u00a0 and then extrapolate conclusions about system performance from this single point. Instead, HammerDB has always encouraged the building of performance profiles to fully understand how a database system behaves. HammerDB v4.11 automates this &hellip; <\/p>\n<p class=\"link-more\"><a href=\"https:\/\/www.hammerdb.com\/blog\/uncategorized\/hammerdb-v4-11-new-features-performance-profiles-for-tproc-c-workloads\/\" class=\"more-link\">Continue reading<span class=\"screen-reader-text\"> &#8220;HammerDB v4.11 New Features: Performance Profiles for TPROC-C Workloads&#8221;<\/span><\/a><\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"ppma_author":[5],"class_list":["post-1651","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"authors":[{"term_id":5,"user_id":2,"is_guest":0,"slug":"hammerdb","display_name":"HammerDB","avatar_url":{"url":"https:\/\/www.hammerdb.com\/blog\/wp-content\/uploads\/2018\/10\/logo-white.png","url2x":"https:\/\/www.hammerdb.com\/blog\/wp-content\/uploads\/2018\/10\/logo-white.png"},"author_category":"","user_url":"http:\/\/www.hammerdb.com","last_name":"","first_name":"","job_title":"","description":""}],"_links":{"self":[{"href":"https:\/\/www.hammerdb.com\/blog\/wp-json\/wp\/v2\/posts\/1651","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.hammerdb.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.hammerdb.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.hammerdb.com\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.hammerdb.com\/blog\/wp-json\/wp\/v2\/comments?post=1651"}],"version-history":[{"count":11,"href":"https:\/\/www.hammerdb.com\/blog\/wp-json\/wp\/v2\/posts\/1651\/revisions"}],"predecessor-version":[{"id":1695,"href":"https:\/\/www.hammerdb.com\/blog\/wp-json\/wp\/v2\/posts\/1651\/revisions\/1695"}],"wp:attachment":[{"href":"https:\/\/www.hammerdb.com\/blog\/wp-json\/wp\/v2\/media?parent=1651"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.hammerdb.com\/blog\/wp-json\/wp\/v2\/categories?post=1651"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.hammerdb.com\/blog\/wp-json\/wp\/v2\/tags?post=1651"},{"taxonomy":"author","embeddable":true,"href":"https:\/\/www.hammerdb.com\/blog\/wp-json\/wp\/v2\/ppma_author?post=1651"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}