From 74467417462bb9b13fb6c07efcdad09f1a804c07 Mon Sep 17 00:00:00 2001 From: Natalia Portillo Date: Thu, 14 Oct 2021 03:12:02 +0100 Subject: [PATCH] Add benchmarks for Apple RLE decompression. --- Aaru6.Compression/Aaru6.Compression.csproj | 9 ++ Aaru6.Compression/AppleRle.cs | 128 +++++++++++++++++++++ AaruBenchmark.sln | 6 + AaruBenchmark/AaruBenchmark.csproj | 6 + AaruBenchmark/Benchs.cs | 10 ++ AaruBenchmark/Compression/Aaru.cs | 34 ++++++ AaruBenchmark/Compression/Aaru6.cs | 34 ++++++ AaruBenchmark/Program.cs | 1 + AaruBenchmark/data/apple_rle.bin | Bin 0 -> 1102 bytes Benchmarks.ods | Bin 85981 -> 84605 bytes 10 files changed, 228 insertions(+) create mode 100644 Aaru6.Compression/Aaru6.Compression.csproj create mode 100644 Aaru6.Compression/AppleRle.cs create mode 100644 AaruBenchmark/Compression/Aaru.cs create mode 100644 AaruBenchmark/Compression/Aaru6.cs create mode 100644 AaruBenchmark/data/apple_rle.bin diff --git a/Aaru6.Compression/Aaru6.Compression.csproj b/Aaru6.Compression/Aaru6.Compression.csproj new file mode 100644 index 0000000..132c02c --- /dev/null +++ b/Aaru6.Compression/Aaru6.Compression.csproj @@ -0,0 +1,9 @@ + + + + net6.0 + enable + enable + + + diff --git a/Aaru6.Compression/AppleRle.cs b/Aaru6.Compression/AppleRle.cs new file mode 100644 index 0000000..d43e251 --- /dev/null +++ b/Aaru6.Compression/AppleRle.cs @@ -0,0 +1,128 @@ +// /*************************************************************************** +// Aaru Data Preservation Suite +// ---------------------------------------------------------------------------- +// +// Filename : AppleRle.cs +// Author(s) : Natalia Portillo +// +// Component : Compression algorithms. +// +// --[ Description ] ---------------------------------------------------------- +// +// Decompress Apple variant of RLE. +// +// --[ License ] -------------------------------------------------------------- +// +// This library is free software; you can redistribute it and/or modify +// it under the terms of the GNU Lesser General Public License as +// published by the Free Software Foundation; either version 2.1 of the +// License, or (at your option) any later version. +// +// This library is distributed in the hope that it will be useful, but +// WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, see . +// +// ---------------------------------------------------------------------------- +// Copyright © 2011-2021 Natalia Portillo +// Copyright © 2018-2019 David Ryskalczyk +// ****************************************************************************/ + +using System.IO; + +namespace Aaru6.Compression +{ + /// Implements the Apple version of RLE + public class AppleRle + { + const uint DART_CHUNK = 20960; + + readonly Stream _inStream; + int _count; + bool _nextA; // true if A, false if B + byte _repeatedByteA, _repeatedByteB; + bool _repeatMode; // true if we're repeating, false if we're just copying + + /// Initializes a decompressor for the specified stream + /// Stream containing the compressed data + public AppleRle(Stream stream) + { + _inStream = stream; + Reset(); + } + + void Reset() + { + _repeatedByteA = _repeatedByteB = 0; + _count = 0; + _nextA = true; + _repeatMode = false; + } + + /// Decompresses a byte + /// Decompressed byte + public int ProduceByte() + { + if(_repeatMode && _count > 0) + { + _count--; + + if(_nextA) + { + _nextA = false; + + return _repeatedByteA; + } + + _nextA = true; + + return _repeatedByteB; + } + + if(!_repeatMode && + _count > 0) + { + _count--; + + return _inStream.ReadByte(); + } + + if(_inStream.Position == _inStream.Length) + return -1; + + while(true) + { + byte b1 = (byte)_inStream.ReadByte(); + byte b2 = (byte)_inStream.ReadByte(); + short s = (short)((b1 << 8) | b2); + + if(s == 0 || + s >= DART_CHUNK || + s <= -DART_CHUNK) + continue; + + if(s < 0) + { + _repeatMode = true; + _repeatedByteA = (byte)_inStream.ReadByte(); + _repeatedByteB = (byte)_inStream.ReadByte(); + _count = (-s * 2) - 1; + _nextA = false; + + return _repeatedByteA; + } + + if(s <= 0) + continue; + + _repeatMode = false; + _count = (s * 2) - 1; + + return _inStream.ReadByte(); + } + } + } +} \ No newline at end of file diff --git a/AaruBenchmark.sln b/AaruBenchmark.sln index 982cf4c..77038fa 100644 --- a/AaruBenchmark.sln +++ b/AaruBenchmark.sln @@ -4,6 +4,8 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "AaruBenchmark", "AaruBenchm EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Aaru6.Checksums", "Aaru6.Checksums\Aaru6.Checksums.csproj", "{CC48B324-A532-4A45-87A6-6F91F7141E8D}" EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Aaru6.Compression", "Aaru6.Compression\Aaru6.Compression.csproj", "{7B9BAFE0-E9D9-4EF4-B009-007F727DAB68}" +EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Any CPU = Debug|Any CPU @@ -18,5 +20,9 @@ Global {CC48B324-A532-4A45-87A6-6F91F7141E8D}.Debug|Any CPU.Build.0 = Debug|Any CPU {CC48B324-A532-4A45-87A6-6F91F7141E8D}.Release|Any CPU.ActiveCfg = Release|Any CPU {CC48B324-A532-4A45-87A6-6F91F7141E8D}.Release|Any CPU.Build.0 = Release|Any CPU + {7B9BAFE0-E9D9-4EF4-B009-007F727DAB68}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {7B9BAFE0-E9D9-4EF4-B009-007F727DAB68}.Debug|Any CPU.Build.0 = Debug|Any CPU + {7B9BAFE0-E9D9-4EF4-B009-007F727DAB68}.Release|Any CPU.ActiveCfg = Release|Any CPU + {7B9BAFE0-E9D9-4EF4-B009-007F727DAB68}.Release|Any CPU.Build.0 = Release|Any CPU EndGlobalSection EndGlobal diff --git a/AaruBenchmark/AaruBenchmark.csproj b/AaruBenchmark/AaruBenchmark.csproj index 36a162f..b72280b 100644 --- a/AaruBenchmark/AaruBenchmark.csproj +++ b/AaruBenchmark/AaruBenchmark.csproj @@ -7,6 +7,7 @@ + @@ -25,10 +26,15 @@ Always + + + Always + + diff --git a/AaruBenchmark/Benchs.cs b/AaruBenchmark/Benchs.cs index 1ccd00a..bf55fdb 100644 --- a/AaruBenchmark/Benchs.cs +++ b/AaruBenchmark/Benchs.cs @@ -5,6 +5,16 @@ using BenchmarkDotNet.Jobs; namespace AaruBenchmark { + [SimpleJob(RuntimeMoniker.Net60)] + public class AppleRleBenchs + { + [Benchmark(Baseline = true)] + public void Aaru() => Compression.Aaru.AppleRle(); + + [Benchmark] + public void Aaru6() => Compression.Aaru6.AppleRle(); + } + [SimpleJob(RuntimeMoniker.Net60)] public class GzipBenchs { diff --git a/AaruBenchmark/Compression/Aaru.cs b/AaruBenchmark/Compression/Aaru.cs new file mode 100644 index 0000000..ecd443b --- /dev/null +++ b/AaruBenchmark/Compression/Aaru.cs @@ -0,0 +1,34 @@ +using System.IO; +using Aaru.Compression; +using Aaru6.Checksums; + +namespace AaruBenchmark.Compression +{ + public class Aaru + { + const int BUFFER_SIZE = 20960; + + public static void AppleRle() + { + byte[] input = new byte[1102]; + + var fs = new FileStream(Path.Combine(Program.Folder, "apple_rle.bin"), FileMode.Open, FileAccess.Read); + + fs.Read(input, 0, input.Length); + fs.Close(); + fs.Dispose(); + + byte[] output = new byte[BUFFER_SIZE]; + + var rle = new AppleRle(new MemoryStream(input)); + + for(int i = 0; i < BUFFER_SIZE; i++) + output[i] = (byte)rle.ProduceByte(); + + string crc = Crc32Context.Data(output, out _); + + if(crc != "3525ef06") + throw new InvalidDataException("Incorrect decompressed checksum"); + } + } +} \ No newline at end of file diff --git a/AaruBenchmark/Compression/Aaru6.cs b/AaruBenchmark/Compression/Aaru6.cs new file mode 100644 index 0000000..aa853ef --- /dev/null +++ b/AaruBenchmark/Compression/Aaru6.cs @@ -0,0 +1,34 @@ +using System.IO; +using Aaru6.Checksums; +using Aaru6.Compression; + +namespace AaruBenchmark.Compression +{ + public class Aaru6 + { + const int BUFFER_SIZE = 20960; + + public static void AppleRle() + { + byte[] input = new byte[1102]; + + var fs = new FileStream(Path.Combine(Program.Folder, "apple_rle.bin"), FileMode.Open, FileAccess.Read); + + fs.Read(input, 0, input.Length); + fs.Close(); + fs.Dispose(); + + byte[] output = new byte[BUFFER_SIZE]; + + var rle = new AppleRle(new MemoryStream(input)); + + for(int i = 0; i < BUFFER_SIZE; i++) + output[i] = (byte)rle.ProduceByte(); + + string crc = Crc32Context.Data(output, out _); + + if(crc != "3525ef06") + throw new InvalidDataException("Incorrect decompressed checksum"); + } + } +} \ No newline at end of file diff --git a/AaruBenchmark/Program.cs b/AaruBenchmark/Program.cs index 9145a2b..57c81da 100644 --- a/AaruBenchmark/Program.cs +++ b/AaruBenchmark/Program.cs @@ -13,6 +13,7 @@ namespace AaruBenchmark { var config = ManualConfig.Create(DefaultConfig.Instance); + BenchmarkRunner.Run(config); BenchmarkRunner.Run(config); BenchmarkRunner.Run(config); BenchmarkRunner.Run(config); diff --git a/AaruBenchmark/data/apple_rle.bin b/AaruBenchmark/data/apple_rle.bin new file mode 100644 index 0000000000000000000000000000000000000000..8789ec534c99c9ac86644122056f7b596aa6f691 GIT binary patch literal 1102 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 O{2A5RLd+Q%7#IMNaQH0% delta 30699 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 z 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 F7yt@j8dv}T