NAME
Bencher::Scenario::DataSah::Coerce - Benchmark coercion
VERSION
This document describes version 0.07 of Bencher::Scenario::DataSah::Coerce (from Perl distribution Bencher-Scenarios-DataSah), released on 2017-01-25.
SYNOPSIS
To run benchmark with default option:
% bencher -m DataSah::Coerce
For more options (dump scenario, list/include/exclude/add participants, list/include/exclude/add datasets, etc), see bencher or run bencher --help
.
DESCRIPTION
Packaging a benchmark script as a Bencher scenario makes it convenient to include/exclude/add participants/datasets (either via CLI or Perl code), send the result to a central repository, among others . See Bencher and bencher (CLI) for more details.
BENCHMARK PARTICIPANTS
gen_coercer (perl_code)
Code template:
state $c = Data::Sah::Coerce::gen_coercer(type => <type>, coerce_to => <coerce_to>); $c->(<data>)
BENCHMARK DATASETS
date (coerce to float(epoch))
SAMPLE BENCHMARK RESULTS
Run on: perl: v5.24.0, CPU: Intel(R) Core(TM) M-5Y71 CPU @ 1.20GHz (2 cores), OS: GNU/Linux LinuxMint version 17.3, OS kernel: Linux version 3.19.0-32-generic.
Benchmark with default options (bencher -m DataSah::Coerce
):
#table1#
[
200,
"OK",
[
{
"arg_data" : "2016-05-16",
"errors" : "6.1e-09",
"rate" : "72900",
"samples" : 24,
"time" : "13.7",
"vs_slowest" : "1"
},
{
"arg_data" : 1463373166,
"errors" : "8.5e-10",
"rate" : "1600000",
"samples" : 20,
"time" : "0.61",
"vs_slowest" : "22"
},
{
"arg_data" : [],
"errors" : "8.3e-10",
"rate" : "2200000",
"samples" : 20,
"time" : "0.45",
"vs_slowest" : "31"
},
{
"arg_data" : "abc",
"errors" : "2.1e-10",
"rate" : "2540000",
"samples" : 20,
"time" : "0.394",
"vs_slowest" : "34.8"
},
{
"arg_data" : 123,
"errors" : "6.5e-10",
"rate" : "2700000",
"samples" : 20,
"time" : "0.37",
"vs_slowest" : "37"
},
{
"arg_data" : null,
"errors" : "8.1e-11",
"rate" : "7470000",
"samples" : 33,
"time" : "0.134",
"vs_slowest" : "102"
}
],
{
"func.bencher_args" : {
"action" : "bench",
"note" : "Run by Pod::Weaver::Plugin::Bencher::Scenario",
"scenario_module" : "DataSah::Coerce"
},
"func.bencher_version" : null,
"func.cpu_info" : [
{
"L2_cache" : {
"max_cache_size" : "4096 KB"
},
"address_width" : "64",
"architecture" : "AMD-64",
"bus_speed" : null,
"data_width" : "64",
"family" : "6",
"flags" : [
"fpu",
"vme",
"de",
"pse",
"tsc",
"msr",
"pae",
"mce",
"cx8",
"apic",
"sep",
"mtrr",
"pge",
"mca",
"cmov",
"pat",
"pse36",
"clflush",
"dts",
"acpi",
"mmx",
"fxsr",
"sse",
"sse2",
"ss",
"ht",
"tm",
"pbe",
"syscall",
"nx",
"pdpe1gb",
"rdtscp",
"lm",
"constant_tsc",
"arch_perfmon",
"pebs",
"bts",
"rep_good",
"nopl",
"xtopology",
"nonstop_tsc",
"aperfmperf",
"eagerfpu",
"pni",
"pclmulqdq",
"dtes64",
"monitor",
"ds_cpl",
"vmx",
"smx",
"est",
"tm2",
"ssse3",
"fma",
"cx16",
"xtpr",
"pdcm",
"pcid",
"sse4_1",
"sse4_2",
"x2apic",
"movbe",
"popcnt",
"tsc_deadline_timer",
"aes",
"xsave",
"avx",
"f16c",
"rdrand",
"lahf_lm",
"abm",
"3dnowprefetch",
"ida",
"arat",
"epb",
"pln",
"pts",
"dtherm",
"tpr_shadow",
"vnmi",
"flexpriority",
"ept",
"vpid",
"fsgsbase",
"tsc_adjust",
"bmi1",
"hle",
"avx2",
"smep",
"bmi2",
"erms",
"invpcid",
"rtm",
"rdseed",
"adx",
"smap",
"xsaveopt"
],
"manufacturer" : "GenuineIntel",
"model" : "61",
"name" : "Intel(R) Core(TM) M-5Y71 CPU @ 1.20GHz",
"number_of_cores" : "2",
"number_of_logical_processors" : 4,
"processor_id" : "0",
"speed" : "2599.953",
"stepping" : "4"
},
{
"L2_cache" : {
"max_cache_size" : "4096 KB"
},
"address_width" : "64",
"architecture" : "AMD-64",
"bus_speed" : null,
"data_width" : "64",
"family" : "6",
"flags" : [
"fpu",
"vme",
"de",
"pse",
"tsc",
"msr",
"pae",
"mce",
"cx8",
"apic",
"sep",
"mtrr",
"pge",
"mca",
"cmov",
"pat",
"pse36",
"clflush",
"dts",
"acpi",
"mmx",
"fxsr",
"sse",
"sse2",
"ss",
"ht",
"tm",
"pbe",
"syscall",
"nx",
"pdpe1gb",
"rdtscp",
"lm",
"constant_tsc",
"arch_perfmon",
"pebs",
"bts",
"rep_good",
"nopl",
"xtopology",
"nonstop_tsc",
"aperfmperf",
"eagerfpu",
"pni",
"pclmulqdq",
"dtes64",
"monitor",
"ds_cpl",
"vmx",
"smx",
"est",
"tm2",
"ssse3",
"fma",
"cx16",
"xtpr",
"pdcm",
"pcid",
"sse4_1",
"sse4_2",
"x2apic",
"movbe",
"popcnt",
"tsc_deadline_timer",
"aes",
"xsave",
"avx",
"f16c",
"rdrand",
"lahf_lm",
"abm",
"3dnowprefetch",
"ida",
"arat",
"epb",
"pln",
"pts",
"dtherm",
"tpr_shadow",
"vnmi",
"flexpriority",
"ept",
"vpid",
"fsgsbase",
"tsc_adjust",
"bmi1",
"hle",
"avx2",
"smep",
"bmi2",
"erms",
"invpcid",
"rtm",
"rdseed",
"adx",
"smap",
"xsaveopt"
],
"manufacturer" : "GenuineIntel",
"model" : "61",
"name" : "Intel(R) Core(TM) M-5Y71 CPU @ 1.20GHz",
"number_of_cores" : "2",
"number_of_logical_processors" : 4,
"processor_id" : "1",
"speed" : "2599.953",
"stepping" : "4"
},
{
"L2_cache" : {
"max_cache_size" : "4096 KB"
},
"address_width" : "64",
"architecture" : "AMD-64",
"bus_speed" : null,
"data_width" : "64",
"family" : "6",
"flags" : [
"fpu",
"vme",
"de",
"pse",
"tsc",
"msr",
"pae",
"mce",
"cx8",
"apic",
"sep",
"mtrr",
"pge",
"mca",
"cmov",
"pat",
"pse36",
"clflush",
"dts",
"acpi",
"mmx",
"fxsr",
"sse",
"sse2",
"ss",
"ht",
"tm",
"pbe",
"syscall",
"nx",
"pdpe1gb",
"rdtscp",
"lm",
"constant_tsc",
"arch_perfmon",
"pebs",
"bts",
"rep_good",
"nopl",
"xtopology",
"nonstop_tsc",
"aperfmperf",
"eagerfpu",
"pni",
"pclmulqdq",
"dtes64",
"monitor",
"ds_cpl",
"vmx",
"smx",
"est",
"tm2",
"ssse3",
"fma",
"cx16",
"xtpr",
"pdcm",
"pcid",
"sse4_1",
"sse4_2",
"x2apic",
"movbe",
"popcnt",
"tsc_deadline_timer",
"aes",
"xsave",
"avx",
"f16c",
"rdrand",
"lahf_lm",
"abm",
"3dnowprefetch",
"ida",
"arat",
"epb",
"pln",
"pts",
"dtherm",
"tpr_shadow",
"vnmi",
"flexpriority",
"ept",
"vpid",
"fsgsbase",
"tsc_adjust",
"bmi1",
"hle",
"avx2",
"smep",
"bmi2",
"erms",
"invpcid",
"rtm",
"rdseed",
"adx",
"smap",
"xsaveopt"
],
"manufacturer" : "GenuineIntel",
"model" : "61",
"name" : "Intel(R) Core(TM) M-5Y71 CPU @ 1.20GHz",
"number_of_cores" : "2",
"number_of_logical_processors" : 4,
"processor_id" : "2",
"speed" : "2599.953",
"stepping" : "4"
},
{
"L2_cache" : {
"max_cache_size" : "4096 KB"
},
"address_width" : "64",
"architecture" : "AMD-64",
"bus_speed" : null,
"data_width" : "64",
"family" : "6",
"flags" : [
"fpu",
"vme",
"de",
"pse",
"tsc",
"msr",
"pae",
"mce",
"cx8",
"apic",
"sep",
"mtrr",
"pge",
"mca",
"cmov",
"pat",
"pse36",
"clflush",
"dts",
"acpi",
"mmx",
"fxsr",
"sse",
"sse2",
"ss",
"ht",
"tm",
"pbe",
"syscall",
"nx",
"pdpe1gb",
"rdtscp",
"lm",
"constant_tsc",
"arch_perfmon",
"pebs",
"bts",
"rep_good",
"nopl",
"xtopology",
"nonstop_tsc",
"aperfmperf",
"eagerfpu",
"pni",
"pclmulqdq",
"dtes64",
"monitor",
"ds_cpl",
"vmx",
"smx",
"est",
"tm2",
"ssse3",
"fma",
"cx16",
"xtpr",
"pdcm",
"pcid",
"sse4_1",
"sse4_2",
"x2apic",
"movbe",
"popcnt",
"tsc_deadline_timer",
"aes",
"xsave",
"avx",
"f16c",
"rdrand",
"lahf_lm",
"abm",
"3dnowprefetch",
"ida",
"arat",
"epb",
"pln",
"pts",
"dtherm",
"tpr_shadow",
"vnmi",
"flexpriority",
"ept",
"vpid",
"fsgsbase",
"tsc_adjust",
"bmi1",
"hle",
"avx2",
"smep",
"bmi2",
"erms",
"invpcid",
"rtm",
"rdseed",
"adx",
"smap",
"xsaveopt"
],
"manufacturer" : "GenuineIntel",
"model" : "61",
"name" : "Intel(R) Core(TM) M-5Y71 CPU @ 1.20GHz",
"number_of_cores" : "2",
"number_of_logical_processors" : 4,
"processor_id" : "3",
"speed" : "2599.953",
"stepping" : "4"
}
],
"func.elapsed_time" : 0.143622159957886,
"func.module_startup" : null,
"func.module_versions" : {
"Bencher::Scenario::DataSah::Coerce" : null,
"Benchmark::Dumb" : "0.10",
"Devel::Platform::Info" : "0.16",
"Sys::Info" : "0.78",
"__PACKAGE__" : "1.034",
"perl" : "v5.24.0"
},
"func.note" : "Run by Pod::Weaver::Plugin::Bencher::Scenario",
"func.permute" : [
"perl",
[
"perl"
],
"participant",
[
0
],
"dataset",
[
0
]
],
"func.platform_info" : {
"archname" : "x86_64",
"codename" : "rosa",
"is32bit" : 0,
"is64bit" : 1,
"kernel" : "linux-3.19.0-32-generic",
"kname" : "Linux",
"kvers" : "3.19.0-32-generic",
"osflag" : "linux",
"oslabel" : "LinuxMint",
"osname" : "GNU/Linux",
"osvers" : "17.3",
"source" : {
"cat /etc/.issue" : "",
"cat /etc/issue" : "Linux Mint 17.3 Rosa \\n \\l",
"lsb_release -a" : "Distributor ID:\tLinuxMint\nDescription:\tLinux Mint 17.3 Rosa\nRelease:\t17.3\nCodename:\trosa",
"uname -a" : "Linux backpacker 3.19.0-32-generic #37~14.04.1-Ubuntu SMP Thu Oct 22 09:41:40 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux",
"uname -m" : "x86_64",
"uname -o" : "GNU/Linux",
"uname -r" : "3.19.0-32-generic",
"uname -s" : "Linux"
}
},
"func.precision" : 0,
"func.scenario_module" : "Bencher::Scenario::DataSah::Coerce",
"func.scenario_module_md5sum" : "3f81bf39184f72bb9fde60744f642c81",
"func.scenario_module_mtime" : 1463763168,
"func.scenario_module_sha1sum" : "1f2acc2c498be7556b36a8817d7345f48b0428a7",
"func.scenario_module_sha256sum" : "38b8f65763fe5c353d63ba08b36fd6cb9bcf32ee39a974f68f8370d4d097596a",
"func.time_end" : 1485329055.89202,
"func.time_factor" : 1000000,
"func.time_start" : 1485329055.7484,
"table.field_aligns" : [
"left",
"number",
"number",
"number",
"number",
"number"
],
"table.field_units" : [
null,
"/s",
"μs"
],
"table.fields" : [
"arg_data",
"rate",
"time",
"vs_slowest",
"errors",
"samples"
]
}
]
To display as an interactive HTML table on a browser, you can add option --format html+datatables
.
HOMEPAGE
Please visit the project's homepage at https://metacpan.org/release/Bencher-Scenarios-DataSah.
SOURCE
Source repository is at https://github.com/perlancar/perl-Bencher-Scenario-DataSah.
BUGS
Please report any bugs or feature requests on the bugtracker website https://rt.cpan.org/Public/Dist/Display.html?Name=Bencher-Scenarios-DataSah
When submitting a bug or request, please include a test-file or a patch to an existing test-file that illustrates the bug or desired feature.
AUTHOR
perlancar <perlancar@cpan.org>
COPYRIGHT AND LICENSE
This software is copyright (c) 2017 by perlancar@cpan.org.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.