dotgnu-pnet
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Pnet-developers] [patch #3695] BufferedStream is way to slow


From: Andre Seidelt
Subject: [Pnet-developers] [patch #3695] BufferedStream is way to slow
Date: Sun, 30 Jan 2005 21:49:57 +0000
User-agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.7.5) Gecko/20041107 Firefox/1.0

URL:
  <http://savannah.gnu.org/patch/?func=detailitem&item_id=3695>

                 Summary: BufferedStream is way to slow
                 Project: DotGNU Portable.NET
            Submitted by: Ilu
            Submitted on: Sun 01/30/2005 at 21:49
                Category: None
                Priority: 5 - Normal
                  Status: None
                 Privacy: Public
             Assigned to: None
        Originator Email: 
             Open/Closed: Open

    _______________________________________________________

Details:

The reason for this is the usage of Array.Copy() to copy byte-arrays arround.
Deserializing ~4mb takes 1:40 with this method resulting in a lot of calls to
Array.GetRank() and Array.GetElementType().

As long as Array.Copy is no native method the following patch can reduce the
overhead by approx. factor 8 (1:40 without, 0:12 with the patch for me).

The patch was obtained using
address@hidden ~/pnet/pnetlib/runtime
$ cvs diff -u3 System/IO/BufferedStream.cs >/tmp/BufferedStream.patch






    _______________________________________________________

File Attachments:


-------------------------------------------------------
Date: Sun 01/30/2005 at 21:49  Name: BufferedStream.patch  Size: 1017B   By:
Ilu
implements an own ArrayCopy() method for bytes
<http://savannah.gnu.org/patch/download.php?item_id=3695&item_file_id=4113>

    _______________________________________________________

This item URL is:

  <http://savannah.gnu.org/patch/?func=detailitem&item_id=3695>

_______________________________________________
  Message sent via/by Savannah
  http://savannah.gnu.org/



reply via email to

[Prev in Thread] Current Thread [Next in Thread]