[jira] [Created] (IGNITE-1785) .Net: Improve PlatformMemory/PortableStream performance and memory usage

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

[jira] [Created] (IGNITE-1785) .Net: Improve PlatformMemory/PortableStream performance and memory usage

Anton Vinogradov (Jira)
Pavel  Tupitsyn created IGNITE-1785:
---------------------------------------

             Summary: .Net: Improve PlatformMemory/PortableStream performance and memory usage
                 Key: IGNITE-1785
                 URL: https://issues.apache.org/jira/browse/IGNITE-1785
             Project: Ignite
          Issue Type: Improvement
          Components: interop
    Affects Versions: 1.5
            Reporter: Pavel  Tupitsyn
            Assignee: Pavel  Tupitsyn
             Fix For: 1.5


* PlatformMemory is just a single "long _memPtr" and can be easily converted to a struct to reduce allocations (it is allocated a lot)

* PlatformMemoryStream works with PlatformMemory.Length and Capacity indirectly. By employing a struct approach from https://issues.apache.org/jira/browse/IGNITE-1428 we can work with Length and Capacity directly, which may be faster, and will eliminate the need for SyncronizeInput/Output calls.

* PlatformMemoryStream is allocated even more often than PlatformMemory, need to investigate whether it can also be a struct. See how List<>.GetEnumerator works, which is a struct.




--
This message was sent by Atlassian JIRA
(v6.3.4#6332)