From a75cd09f92ab6323799b235a485fdc3a19ffa549 Mon Sep 17 00:00:00 2001 From: Laura Caulfield Date: Mon, 4 Jan 2016 16:39:11 -0800 Subject: [PATCH] Adding a couple of new drives, Updating Mark's contact info, Adding a couple of simple & handy recipes, Adding functionality to append the publication date to the storscore.ver file included with each set of results --- README.md | 2 +- StorScore.cmd | 3 +++ StorScore.ver | 5 +++++ lib/DeviceDB/LiteOn.ddb | 36 +++++++++++++++++++++++++++++++++++- lib/DeviceDB/SKHynix.ddb | 34 +++++++++++++++++++++++++++++++++- recipes/4k_RR.rcp | 37 +++++++++++++++++++++++++++++++++++++ recipes/4k_RW.rcp | 37 +++++++++++++++++++++++++++++++++++++ 7 files changed, 151 insertions(+), 3 deletions(-) create mode 100644 StorScore.ver create mode 100644 recipes/4k_RR.rcp create mode 100644 recipes/4k_RW.rcp diff --git a/README.md b/README.md index 02f429a..3c0a73e 100644 --- a/README.md +++ b/README.md @@ -88,5 +88,5 @@ Feedback? Questions, comments, bug reports, and especially accolades may be directed to the developers: - Laura Caulfield -- Mark Santaniello +- Mark Santaniello - Bikash Sharma diff --git a/StorScore.cmd b/StorScore.cmd index e954cd0..2b26bba 100644 --- a/StorScore.cmd +++ b/StorScore.cmd @@ -71,6 +71,7 @@ use LogmanRunner; use Power; use WmicRunner; use SharedVariables; +use File::Copy; check_system_compatibility(); @@ -212,6 +213,8 @@ die "Results subdirectory $output_dir already exists!\n" my $overall_start = time(); mkdir( $output_dir ); +die "Version file for StorScore doesn't exist!\n" + unless copy( "StorScore.ver", $output_dir ); if( $cmd_line->collect_smart ) { diff --git a/StorScore.ver b/StorScore.ver new file mode 100644 index 0000000..37b36f5 --- /dev/null +++ b/StorScore.ver @@ -0,0 +1,5 @@ +The results in this directory were generated from +the version of storscore published on the date listed +below. If there is no date, the results were generated +from an unpublished & untracked version of code. +Mon 01/04/2016 16:25:24.94 diff --git a/lib/DeviceDB/LiteOn.ddb b/lib/DeviceDB/LiteOn.ddb index 9dab147..5b55fbd 100644 --- a/lib/DeviceDB/LiteOn.ddb +++ b/lib/DeviceDB/LiteOn.ddb @@ -78,9 +78,43 @@ $device_db{'LITEON IT EKT-960P1P'} = } }; +$device_db{'NVMe LITEON EP2-KB960'} = +{ + 'Friendly Name' => 'LiteOn EP2-KB 960GB', + 'Wear Range Attribute' => 177, + 'Rated PE Cycles' => 6000, + 'Host Writes' => + { + 'Attribute' => 241, + 'Unit' => 32 * BYTES_PER_MB_BASE2, + }, + 'Controller Writes' => + { + 'Attribute' => 233, + 'Unit' => BYTES_PER_GB_BASE2, + } +}; + +$device_db{'EP1-KB960'} = +{ + 'Friendly Name' => 'LiteOn EP1-KB 960GB', + 'Wear Range Attribute' => 177, + 'Rated PE Cycles' => 6000, + 'Host Writes' => + { + 'Attribute' => 241, + 'Unit' => 32 * BYTES_PER_MB_BASE2, + }, + 'Controller Writes' => + { + 'Attribute' => 233, + 'Unit' => BYTES_PER_GB_BASE2, + } +}; + $device_db{'EP1-KF960'} = { - 'Friendly Name' => 'LiteOn EP1 960GB', + 'Friendly Name' => 'LiteOn EP1-KF 960GB', 'Wear Range Attribute' => 177, 'Rated PE Cycles' => 6000, 'Host Writes' => diff --git a/lib/DeviceDB/SKHynix.ddb b/lib/DeviceDB/SKHynix.ddb index 905f010..dccf551 100644 --- a/lib/DeviceDB/SKHynix.ddb +++ b/lib/DeviceDB/SKHynix.ddb @@ -45,6 +45,38 @@ $device_db{'NVMe HFS960GD0EED-541'} = 'Rated PE Cycles' => 15000, }; +$device_db{'HFS480G32MED-3410A'} = +{ + 'Friendly Name' => 'SK Hynix SE3010 480GB', + 'Rated PE Cycles' => 3000, + 'Host Writes' => + { + 'Attribute' => 241, + 'Unit' => BYTES_PER_GB_BASE2, + }, + 'Controller Writes' => + { + 'Attribute' => 234, + 'Unit' => BYTES_PER_GB_BASE2, + } +}; + +$device_db{'NVMe SKhynix PE3110 9'} = +{ + 'Friendly Name' => 'SK Hynix PE3110 960GB', + 'Rated PE Cycles' => 15000, + 'Host Writes' => + { + 'Attribute' => 241, + 'Unit' => BYTES_PER_GB_BASE2, + }, + 'Controller Writes' => + { + 'Attribute' => 234, + 'Unit' => BYTES_PER_GB_BASE2, + } +}; + $device_db{'HFS480G32MNB-2000A'} = { 'Friendly Name' => 'SK Hynix SH921 480GB', @@ -79,7 +111,7 @@ $device_db{'HFS480G32EEB-2400A'} = $device_db{'Marvell AltaPlus R2.2'} = { - 'Friendly Name' => 'SK Hynix PC200', + 'Friendly Name' => 'SK Hynix PC200 480GB', 'Rated PE Cycles' => 3000, 'Host Writes' => { diff --git a/recipes/4k_RR.rcp b/recipes/4k_RR.rcp new file mode 100644 index 0000000..9c2f225 --- /dev/null +++ b/recipes/4k_RR.rcp @@ -0,0 +1,37 @@ +# vim: set filetype=perl: + +# StorScore +# +# Copyright (c) Microsoft Corporation +# +# All rights reserved. +# +# MIT License +# +# 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. + +test( + description => "4k Random Reads", + write_percentage => 0, + access_pattern => 'random', + block_size => '4K', + queue_depth => 1, + warmup_time => 60, + run_time => 3600, +); diff --git a/recipes/4k_RW.rcp b/recipes/4k_RW.rcp new file mode 100644 index 0000000..c9cc53d --- /dev/null +++ b/recipes/4k_RW.rcp @@ -0,0 +1,37 @@ +# vim: set filetype=perl: + +# StorScore +# +# Copyright (c) Microsoft Corporation +# +# All rights reserved. +# +# MIT License +# +# 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. + +test( + description => "4k Random Writes", + write_percentage => 100, + access_pattern => 'random', + block_size => '4K', + queue_depth => 1, + warmup_time => 60, + run_time => 3600, +);