public void Invoke()
        {
            var graph = DataBlock.Filled();

            var watch = new Stopwatch();
            watch.Start();
            Console.WriteLine("Initializing enigma serialization test...");

            long length;
            var serializer = new PackedDataSerializer<DataBlock>();
            using (var stream = new MemoryStream()) {
                serializer.Serialize(stream, graph);
                length = stream.Length;
            }

            var initializationTime = watch.Elapsed;

            for (var i = 0; i < 10000; i++) {
                serializer.Serialize(new MemoryStream(), graph);
            }

            var serializationTime = watch.Elapsed.Subtract(initializationTime);

            Console.WriteLine("Enigma serialization test completed");
            Console.WriteLine("Size of data: " + length);
            Console.WriteLine("Initialization time: " + initializationTime);
            Console.WriteLine("Serialization time: " + serializationTime);
        }
Exemplo n.º 2
0
        public void Invoke()
        {
            var graph = DataBlock.Filled();

            var watch = new Stopwatch();

            watch.Start();
            Console.WriteLine("Initializing enigma serialization test...");

            long length;
            var  serializer = new PackedDataSerializer <DataBlock>();

            using (var stream = new MemoryStream()) {
                serializer.Serialize(stream, graph);
                length = stream.Length;
            }

            Console.WriteLine("Initialization time: " + watch.Elapsed);
            Console.WriteLine("MinSize of data: " + length);
            watch.Restart();

            for (var i = 0; i < 10000; i++)
            {
                serializer.Serialize(new MemoryStream(), graph);
            }

            Console.WriteLine("Serialization time: " + watch.Elapsed);
            watch.Restart();

            Parallel.For(0, 10000, new ParallelOptions {
                MaxDegreeOfParallelism = 4
            }, (idx) => {
                serializer.Serialize(new MemoryStream(), graph);
            });

            Console.WriteLine("Parallel serialization time: " + watch.Elapsed);

            Console.WriteLine("Enigma serialization test completed");
        }