Esempio n. 1
0
            /// <summary>
            /// create a new SortInfo (with empty statistics) for debugging </summary>
            public SortInfo(OfflineSorter outerInstance)
            {
                this.OuterInstance = outerInstance;

                if (!InstanceFieldsInitialized)
                {
                    InitializeInstanceFields();
                    InstanceFieldsInitialized = true;
                }
            }
Esempio n. 2
0
        /// <summary>
        /// Check sorting data on an instance of <seealso cref="OfflineSorter"/>.
        /// </summary>
        private OfflineSorter.SortInfo CheckSort(OfflineSorter sort, byte[][] data)
        {
            FileInfo unsorted = WriteAll("unsorted", data);

            Array.Sort(data, unsignedByteOrderComparer);
            FileInfo golden = WriteAll("golden", data);

            FileInfo sorted = new FileInfo(Path.Combine(tempDir.FullName, "sorted"));

            OfflineSorter.SortInfo sortInfo = sort.Sort(unsorted, sorted);
            //System.out.println("Input size [MB]: " + unsorted.Length() / (1024 * 1024));
            //System.out.println(sortInfo);

            AssertFilesIdentical(golden, sorted);
            return(sortInfo);
        }
Esempio n. 3
0
 public PriorityQueueAnonymousInnerClassHelper(OfflineSorter outerInstance, int size)
     : base(size)
 {
     this.outerInstance = outerInstance;
 }
Esempio n. 4
0
 /// <summary>
 /// Create a new <see cref="SortInfo"/> (with empty statistics) for debugging. </summary>
 public SortInfo(OfflineSorter offlineSorter)
 {
     BufferSize = offlineSorter.ramBufferSize.bytes;
 }
Esempio n. 5
0
 public virtual void TestLargerRandom()
 {
     // Sort 100MB worth of data with 15mb buffer.
     CheckSort(new OfflineSorter(OfflineSorter.DEFAULT_COMPARER, OfflineSorter.BufferSize.Megabytes(16), OfflineSorter.DefaultTempDir(), OfflineSorter.MAX_TEMPFILES), GenerateRandom((int)OfflineSorter.MB * 100));
 }
Esempio n. 6
0
 public virtual void TestSmallRandom()
 {
     // Sort 20 mb worth of data with 1mb buffer.
     OfflineSorter.SortInfo sortInfo = CheckSort(new OfflineSorter(OfflineSorter.DEFAULT_COMPARER, OfflineSorter.BufferSize.Megabytes(1), OfflineSorter.DefaultTempDir(), OfflineSorter.MAX_TEMPFILES), GenerateRandom((int)OfflineSorter.MB * 20));
     Assert.AreEqual(1, sortInfo.MergeRounds);
 }
Esempio n. 7
0
 public virtual void TestIntermediateMerges()
 {
     // Sort 20 mb worth of data with 1mb buffer, binary merging.
     OfflineSorter.SortInfo info = CheckSort(new OfflineSorter(OfflineSorter.DEFAULT_COMPARER, OfflineSorter.BufferSize.Megabytes(1), OfflineSorter.DefaultTempDir(), 2), GenerateRandom((int)OfflineSorter.MB * 20));
     Assert.IsTrue(info.MergeRounds > 10);
 }
Esempio n. 8
0
            /// <summary>
            /// Create a new <see cref="SortInfo"/> (with empty statistics) for debugging. </summary>
            public SortInfo(OfflineSorter outerInstance)
            {
                this.outerInstance = outerInstance;

                BufferSize = outerInstance.ramBufferSize.bytes;
            }
Esempio n. 9
0
            /// <summary>
            /// create a new SortInfo (with empty statistics) for debugging </summary>
            public SortInfo(OfflineSorter outerInstance)
            {
                this.outerInstance = outerInstance;

                InitializeInstanceFields();
            }