Search Issue Tracker

In Progress

Votes

0

Found in [Package]

0.5.0-preview.1

0.5.1-preview.1

0.6.0-preview.1

0.7.0-preview.1

0.7.0-preview.2

0.7.1-preview.1

0.7.1-preview.2

1.0.0-pre.1

1.0.0-pre.2

1.0.0-pre.3

1.0.0

1.0.1

1.0.2

1.0.3

1.1.0-exp.1

1.1.0-pre.1

1.1.0-exp.2

1.1.0-pre.2

1.1.0-pre.3

1.1.0

1.1.1

1.1.2

1.1.3

1.1.4

Issue ID

PROFB-353

Regression

No

Memory Profiler doesn't find references to NativeArrays smaller than 16B (or 24B on x64)

Package: Memory Profiler

-

*Steps to reproduce:*
# Open attatched snapshot in the Memory Profiler window (in the package com.unity.memoryprofiler), and navigate to All Of Memory page
# Search for ReferenceHolder and select the instance named "Root"
# Scroll down to the Managed Fields inspector and find the m_Data field as well as the m_DataPtr field

*Actual results:* They report that the fields are pointers at a Native Region.

*Expected results:* They report that the fields are pointers at a Native Allocation under named root UnsafeUtility.Malloc(Persistent).

*Reproducible with versions:* 0.5.0-preview.1, 1.0.0, 1.1.6 and Unity 2022.3.65f1

*Not reproducible with versions:* 0.4.4-preview.2 (because it doesn't provide that info at all, not because it was working) or captures made from Unity before and Unity 2022.2 (because the reported allocation size would include the entire block size, not because the Memory Profiler package logic was right).

*Can’t test with versions:* 

*Tested on (OS):* Win11

*Notes:*
* The array in the snapshot is 20B in size but it comes from a Debug build of Unity where the min size of a NativeArray that would be findable would have to be 32B

Add comment

Log in to post comment

All about bugs

View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.