]> git.vpit.fr Git - perl/modules/Scalar-Vec-Util.git/commitdiff
Importing Scalar-Vec-Util-0.04.tar.gz v0.04
authorVincent Pit <vince@profvince.com>
Sun, 29 Jun 2008 16:15:10 +0000 (18:15 +0200)
committerVincent Pit <vince@profvince.com>
Sun, 29 Jun 2008 16:15:10 +0000 (18:15 +0200)
Changes
META.yml
README
lib/Scalar/Vec/Util.pm
t/02-pp.t

diff --git a/Changes b/Changes
index 78cd7408f1785faa6f742bb3932fd65bca3445ef..86b2bc483f68d0c445c6bacbd49421a457c5f596 100644 (file)
--- a/Changes
+++ b/Changes
@@ -1,5 +1,9 @@
 Revision history for Scalar-Vec-Util
 
 Revision history for Scalar-Vec-Util
 
+0.04    2008-06-02 20:40 UTC
+        + Doc : More benchmarks.
+        + Fix : t/02-pp.t failed when the tested version was already installed.
+
 0.03    2008-06-01 12:30 UTC
         + Chg : samples/bench.pl now compares with Bit::Vector when available.
         + Doc : Show the benchmark.
 0.03    2008-06-01 12:30 UTC
         + Chg : samples/bench.pl now compares with Bit::Vector when available.
         + Doc : Show the benchmark.
index 27b65827704ec545fb5473cabd0013b84372f790..7e6ccba282b56b34ac5ab11d1d7f8bd84709a1da 100644 (file)
--- a/META.yml
+++ b/META.yml
@@ -1,6 +1,6 @@
 --- #YAML:1.0
 name:                Scalar-Vec-Util
 --- #YAML:1.0
 name:                Scalar-Vec-Util
-version:             0.03
+version:             0.04
 abstract:            Utility routines for vec strings.
 license:             perl
 author:              
 abstract:            Utility routines for vec strings.
 license:             perl
 author:              
diff --git a/README b/README
index ca8ba6bc9f083dde901208b6a0abdf73fe68dfe6..aecc0ad616070cc6475d289e7fa15f966b8cfb79 100644 (file)
--- a/README
+++ b/README
@@ -2,7 +2,7 @@ NAME
     Scalar::Vec::Util - Utility routines for vec strings.
 
 VERSION
     Scalar::Vec::Util - Utility routines for vec strings.
 
 VERSION
-    Version 0.03
+    Version 0.04
 
 SYNOPSIS
         use Scalar::Vec::Util qw/vfill vcopy veq/;
 
 SYNOPSIS
         use Scalar::Vec::Util qw/vfill vcopy veq/;
@@ -58,35 +58,77 @@ EXPORT
 
 BENCHMARKS
     The following timings were obtained by running the "samples/bench.pl"
 
 BENCHMARKS
     The following timings were obtained by running the "samples/bench.pl"
-    script with perl 5.8.8 on a Core 2 Duo 2.66GHz machine. The "_pp"
-    entries are the pure Perl versions, while "_bv" are Bit::Vector
-    versions.
+    script. The "_pp" entries are the pure Perl versions, while "_bv" are
+    Bit::Vector versions.
 
 
-    Filling bits at a given position :
+    This is for perl 5.8.8 on a Core 2 Duo 2.66GHz machine (unit is 64
+    bits).
+            Filling bits at a given position :
                           Rate vfill_pp vfill_bv    vfill
             vfill_pp    80.3/s       --    -100%    -100%
             vfill_bv 1053399/s 1312401%       --     -11%
             vfill    1180792/s 1471129%      12%       --
 
                           Rate vfill_pp vfill_bv    vfill
             vfill_pp    80.3/s       --    -100%    -100%
             vfill_bv 1053399/s 1312401%       --     -11%
             vfill    1180792/s 1471129%      12%       --
 
-    Copying bits from a bit vector to a different one :
+            Copying bits from a bit vector to a different one :
                          Rate vcopy_pp vcopy_bv    vcopy
             vcopy_pp    112/s       --    -100%    -100%
             vcopy_bv  62599/s   55622%       --     -89%
             vcopy    558491/s  497036%     792%       --
 
                          Rate vcopy_pp vcopy_bv    vcopy
             vcopy_pp    112/s       --    -100%    -100%
             vcopy_bv  62599/s   55622%       --     -89%
             vcopy    558491/s  497036%     792%       --
 
-    Moving bits in the same bit vector from a given position to a different
-    one :
+            Moving bits in the same bit vector from a given position to a different one :
                          Rate vmove_pp vmove_bv    vmove
             vmove_pp   64.8/s       --    -100%    -100%
             vmove_bv  64742/s   99751%       --     -88%
             vmove    547980/s  845043%     746%       --
 
                          Rate vmove_pp vmove_bv    vmove
             vmove_pp   64.8/s       --    -100%    -100%
             vmove_bv  64742/s   99751%       --     -88%
             vmove    547980/s  845043%     746%       --
 
-    Testing bit equality from different positions of different bit vectors :
+            Testing bit equality from different positions of different bit vectors :
                        Rate  veq_pp  veq_bv     veq
             veq_pp   92.7/s      --   -100%   -100%
             veq_bv  32777/s  35241%      --    -94%
             veq    505828/s 545300%   1443%      --
 
                        Rate  veq_pp  veq_bv     veq
             veq_pp   92.7/s      --   -100%   -100%
             veq_bv  32777/s  35241%      --    -94%
             veq    505828/s 545300%   1443%      --
 
+    This is for perl 5.10.0 on a Pentium 4 3.0GHz (unit is 32 bits).
+                         Rate vfill_pp vfill_bv    vfill
+            vfill_pp    185/s       --    -100%    -100%
+            vfill_bv 407979/s  220068%       --     -16%
+            vfill    486022/s  262184%      19%       --
+
+                         Rate vcopy_pp vcopy_bv    vcopy
+            vcopy_pp   61.5/s       --    -100%    -100%
+            vcopy_bv  32548/s   52853%       --     -83%
+            vcopy    187360/s  304724%     476%       --
+
+                         Rate vmove_pp vmove_bv    vmove
+            vmove_pp   63.1/s       --    -100%    -100%
+            vmove_bv  32829/s   51933%       --     -83%
+            vmove    188572/s  298787%     474%       --
+
+                       Rate  veq_pp  veq_bv     veq
+            veq_pp   34.2/s      --   -100%   -100%
+            veq_bv  17518/s  51190%      --    -91%
+            veq    192181/s 562591%    997%      --
+
+    This is for perl 5.10.0 on an UltraSPARC-IIi (unit is 8 bits).
+                        Rate vfill_pp    vfill vfill_bv
+            vfill_pp  4.23/s       --    -100%    -100%
+            vfill    30039/s  709283%       --     -17%
+            vfill_bv 36022/s  850568%      20%       --
+
+                        Rate vcopy_pp vcopy_bv    vcopy
+            vcopy_pp  2.74/s       --    -100%    -100%
+            vcopy_bv  8146/s  297694%       --     -60%
+            vcopy    20266/s  740740%     149%       --
+
+                        Rate vmove_pp vmove_bv    vmove
+            vmove_pp  2.66/s       --    -100%    -100%
+            vmove_bv  8274/s  311196%       --     -59%
+            vmove    20287/s  763190%     145%       --
+
+                      Rate  veq_pp  veq_bv     veq
+            veq_pp  7.33/s      --   -100%   -100%
+            veq_bv  2499/s  33978%      --    -87%
+            veq    19675/s 268193%    687%      --
+
 CAVEATS
     Please report architectures where we can't use the alignment as the move
     unit. I'll add exceptions for them.
 CAVEATS
     Please report architectures where we can't use the alignment as the move
     unit. I'll add exceptions for them.
index 5d88b5ce07b5ace64ee37e116752f6b45e822bfc..4f69d8fd1d930c524362dbb8c2c51ad613be4632 100644 (file)
@@ -11,13 +11,13 @@ Scalar::Vec::Util - Utility routines for vec strings.
 
 =head1 VERSION
 
 
 =head1 VERSION
 
-Version 0.03
+Version 0.04
 
 =cut
 
 our $VERSION;
 BEGIN {
 
 =cut
 
 our $VERSION;
 BEGIN {
- $VERSION = '0.03';
+ $VERSION = '0.04';
  eval {
   require XSLoader;
   XSLoader::load(__PACKAGE__, $VERSION);
  eval {
   require XSLoader;
   XSLoader::load(__PACKAGE__, $VERSION);
@@ -135,38 +135,80 @@ $EXPORT_TAGS{'all'} = [ @EXPORT_OK ];
 
 =head1 BENCHMARKS
 
 
 =head1 BENCHMARKS
 
-The following timings were obtained by running the C<samples/bench.pl> script with perl 5.8.8 on a Core 2 Duo 2.66GHz machine. The C<_pp> entries are the pure Perl versions, while C<_bv> are L<Bit::Vector> versions.
+The following timings were obtained by running the C<samples/bench.pl> script. The C<_pp> entries are the pure Perl versions, while C<_bv> are L<Bit::Vector> versions.
 
 =over 4
 
 
 =over 4
 
-=item Filling bits at a given position :
+=item This is for perl 5.8.8 on a Core 2 Duo 2.66GHz machine (unit is 64 bits).
 
 
+    Filling bits at a given position :
                   Rate vfill_pp vfill_bv    vfill
     vfill_pp    80.3/s       --    -100%    -100%
     vfill_bv 1053399/s 1312401%       --     -11%
     vfill    1180792/s 1471129%      12%       --
 
                   Rate vfill_pp vfill_bv    vfill
     vfill_pp    80.3/s       --    -100%    -100%
     vfill_bv 1053399/s 1312401%       --     -11%
     vfill    1180792/s 1471129%      12%       --
 
-=item Copying bits from a bit vector to a different one :
-
+    Copying bits from a bit vector to a different one :
                  Rate vcopy_pp vcopy_bv    vcopy
     vcopy_pp    112/s       --    -100%    -100%
     vcopy_bv  62599/s   55622%       --     -89%
     vcopy    558491/s  497036%     792%       --
 
                  Rate vcopy_pp vcopy_bv    vcopy
     vcopy_pp    112/s       --    -100%    -100%
     vcopy_bv  62599/s   55622%       --     -89%
     vcopy    558491/s  497036%     792%       --
 
-=item Moving bits in the same bit vector from a given position to a different one :
-
+    Moving bits in the same bit vector from a given position to a different one :
                  Rate vmove_pp vmove_bv    vmove
     vmove_pp   64.8/s       --    -100%    -100%
     vmove_bv  64742/s   99751%       --     -88%
     vmove    547980/s  845043%     746%       --
 
                  Rate vmove_pp vmove_bv    vmove
     vmove_pp   64.8/s       --    -100%    -100%
     vmove_bv  64742/s   99751%       --     -88%
     vmove    547980/s  845043%     746%       --
 
-=item Testing bit equality from different positions of different bit vectors :
-
+    Testing bit equality from different positions of different bit vectors :
                Rate  veq_pp  veq_bv     veq
     veq_pp   92.7/s      --   -100%   -100%
     veq_bv  32777/s  35241%      --    -94%
     veq    505828/s 545300%   1443%      --
 
                Rate  veq_pp  veq_bv     veq
     veq_pp   92.7/s      --   -100%   -100%
     veq_bv  32777/s  35241%      --    -94%
     veq    505828/s 545300%   1443%      --
 
+=item This is for perl 5.10.0 on a Pentium 4 3.0GHz (unit is 32 bits).
+
+                 Rate vfill_pp vfill_bv    vfill
+    vfill_pp    185/s       --    -100%    -100%
+    vfill_bv 407979/s  220068%       --     -16%
+    vfill    486022/s  262184%      19%       --
+
+                 Rate vcopy_pp vcopy_bv    vcopy
+    vcopy_pp   61.5/s       --    -100%    -100%
+    vcopy_bv  32548/s   52853%       --     -83%
+    vcopy    187360/s  304724%     476%       --
+
+                 Rate vmove_pp vmove_bv    vmove
+    vmove_pp   63.1/s       --    -100%    -100%
+    vmove_bv  32829/s   51933%       --     -83%
+    vmove    188572/s  298787%     474%       --
+
+               Rate  veq_pp  veq_bv     veq
+    veq_pp   34.2/s      --   -100%   -100%
+    veq_bv  17518/s  51190%      --    -91%
+    veq    192181/s 562591%    997%      --
+
+=item This is for perl 5.10.0 on an UltraSPARC-IIi (unit is 8 bits).
+
+                Rate vfill_pp    vfill vfill_bv
+    vfill_pp  4.23/s       --    -100%    -100%
+    vfill    30039/s  709283%       --     -17%
+    vfill_bv 36022/s  850568%      20%       --
+
+                Rate vcopy_pp vcopy_bv    vcopy
+    vcopy_pp  2.74/s       --    -100%    -100%
+    vcopy_bv  8146/s  297694%       --     -60%
+    vcopy    20266/s  740740%     149%       --
+
+                Rate vmove_pp vmove_bv    vmove
+    vmove_pp  2.66/s       --    -100%    -100%
+    vmove_bv  8274/s  311196%       --     -59%
+    vmove    20287/s  763190%     145%       --
+
+              Rate  veq_pp  veq_bv     veq
+    veq_pp  7.33/s      --   -100%   -100%
+    veq_bv  2499/s  33978%      --    -87%
+    veq    19675/s 268193%    687%      --
+
 =back
 
 =head1 CAVEATS
 =back
 
 =head1 CAVEATS
index 92ee0c865a27691ea90b9aee4d80ba9cf0c20d64..c4df852a313e560d01f021fe70bd7c8d68704c69 100644 (file)
--- a/t/02-pp.t
+++ b/t/02-pp.t
@@ -3,9 +3,16 @@
 use strict;
 use warnings;
 
 use strict;
 use warnings;
 
+use Config qw/%Config/;
+
 use Test::More tests => 4;
 
 use Test::More tests => 4;
 
-BEGIN { @INC = grep !/arch$/, @INC }
+BEGIN {
+ my $re = join '|',
+           grep defined && length,
+            @Config{qw/myarchname archname/}, 'arch';
+ @INC = grep !/(?:$re)$/, @INC
+}
 use Scalar::Vec::Util qw/vfill vcopy veq SVU_PP/;
 
 is(SVU_PP, 1, 'using pure perl subroutines');
 use Scalar::Vec::Util qw/vfill vcopy veq SVU_PP/;
 
 is(SVU_PP, 1, 'using pure perl subroutines');