public void Performance() { window_ = new WindowedStream(0x150000); outStream_ = new BZip2OutputStream(window_, 1); const long Target = 0x10000000; readTarget_ = writeTarget_ = Target; Thread reader = new Thread(Reader); reader.Name = "Reader"; Thread writer = new Thread(Writer); writer.Name = "Writer"; DateTime startTime = DateTime.Now; writer.Start(); inStream_ = new BZip2InputStream(window_); reader.Start(); Assert.IsTrue(writer.Join((int)TimeSpan.FromMinutes(5.0D).TotalMilliseconds)); Assert.IsTrue(reader.Join((int)TimeSpan.FromMinutes(5.0D).TotalMilliseconds)); DateTime endTime = DateTime.Now; TimeSpan span = endTime - startTime; Console.WriteLine("Time {0} throughput {1} KB/Sec", span, (Target / 1024) / span.TotalSeconds); }
public void BigStream() { window_ = new WindowedStream(0x3ffff); outStream_ = new GZipOutputStream(window_); inStream_ = new GZipInputStream(window_); long target = 0x10000000; readTarget_ = writeTarget_ = target; Thread reader = new Thread(Reader); reader.Name = "Reader"; reader.Start(); Thread writer = new Thread(Writer); writer.Name = "Writer"; DateTime startTime = DateTime.Now; writer.Start(); writer.Join(); reader.Join(); DateTime endTime = DateTime.Now; TimeSpan span = endTime - startTime; Console.WriteLine("Time {0} processes {1} KB/Sec", span, (target / 1024) / span.TotalSeconds); }
public void Performance() { window_ = new WindowedStream(0x150000); outStream_ = new BZip2OutputStream(window_, 1); long target = 0x10000000; readTarget_ = writeTarget_ = target; Thread reader = new Thread(Reader); reader.Name = "Reader"; Thread writer = new Thread(Writer); writer.Name = "Writer"; DateTime startTime = DateTime.Now; writer.Start(); inStream_ = new BZip2InputStream(window_); reader.Start(); writer.Join(); reader.Join(); DateTime endTime = DateTime.Now; TimeSpan span = endTime - startTime; Console.WriteLine("Time {0} throughput {1} KB/Sec", span, (target / 1024) / span.TotalSeconds); }
private Stream OpenDataPageStream(Thrift.PageHeader pageHeader) { var window = new WindowedStream(_inputStream, pageHeader.Compressed_page_size); Stream uncompressed = DataStreamFactory.CreateReader(window, _thriftColumnChunk.Meta_data.Codec, pageHeader.Uncompressed_page_size); return(uncompressed); }
public UnalignedRecordReader(IBinaryStorageFile fileReader, int recordSize, Stream recordData, IntPtr stagingDataPointer) { _fileReader = fileReader; _recordSize = recordSize; _recordData = stagingDataPointer; _managePointer = false; using (var windowedStream = new WindowedStream(recordData, recordSize)) using (var outputStream = new IO.UnmanagedMemoryStream(stagingDataPointer, recordSize)) windowedStream.CopyTo(outputStream, recordSize); }
public UnalignedRecordReader(IBinaryStorageFile fileReader, int recordSize, Stream recordData) { _fileReader = fileReader; _recordSize = recordSize; // Allocating 7 extra bytes to guarantee we don't ever read out of our memory space // _recordData = Marshal.AllocHGlobal(recordData.Length + 7); _recordData = Marshal.AllocHGlobal(recordSize); _managePointer = true; using (var windowedStream = new WindowedStream(recordData, recordSize)) using (var outputStream = new IO.UnmanagedMemoryStream(_recordData, recordSize)) windowedStream.CopyTo(outputStream, recordSize); _bitCursor = 0; }