-
Notifications
You must be signed in to change notification settings - Fork 4.7k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Expand PerfMap format to support metadata for symbol indexation #53792
Conversation
Example metadata for the composite framework: FFFFFFFF 00 28abf608-79eb-36ba-0a52-ef7047051f3c FFFFFFFE 00 Windows FFFFFFFD 00 X64 FFFFFFFC 00 Dia2Lib FFFFFFFB 00 0c6b30bb-2722-455d-b594-478ac4b81b14 FFFFFFFC 01 dotnet-Microsoft.XmlSerializer.Generator FFFFFFFB 01 66818c72-2e5f-4313-889e-af0e2e10acf6 FFFFFFFC 02 FSharp.Core FFFFFFFB 02 cdccf319-adec-8bdf-2295-52fabdb408cf FFFFFFFC 03 ILCompiler.Reflection.ReadyToRun FFFFFFFB 03 76cf152a-06b4-44a1-a177-37da4680d85b FFFFFFFC 04 ILCompiler.TypeSystem.ReadyToRun FFFFFFFB 04 fb8b2ad3-0aa9-44f1-9194-35ad135681e6 FFFFFFFC 05 Microsoft.Bcl.AsyncInterfaces FFFFFFFB 05 1f4f96c4-fb28-460c-b35e-987b8eddbcdc FFFFFFFC 06 Microsoft.CSharp FFFFFFFB 06 623557e9-1da8-43bf-9c7c-ae2796fd43c8 FFFFFFFC 07 Microsoft.Diagnostics.FastSerialization FFFFFFFB 07 6c04112e-341b-43e6-83ab-cad84b0282bb FFFFFFFC 08 Microsoft.Diagnostics.NETCore.Client FFFFFFFB 08 3bf77291-71aa-47f9-ba16-45bf631e2de8 FFFFFFFC 09 Microsoft.Diagnostics.Tools.RuntimeClient FFFFFFFB 09 877dceee-e809-41a9-ac39-01958e0cfdc9 FFFFFFFC 0A Microsoft.Diagnostics.Tracing.TraceEvent FFFFFFFB 0A 2efc0555-e00c-4438-bdb0-1f9f98c8b877 FFFFFFFC 0B Microsoft.Extensions.Caching.Abstractions FFFFFFFB 0B 555e4830-7638-4c66-a4d0-e1518092ccd1 FFFFFFFC 0C Microsoft.Extensions.Caching.Memory FFFFFFFB 0C 6259f37f-3653-43dc-b723-5640783c3cb1 FFFFFFFC 0D Microsoft.Extensions.Configuration FFFFFFFB 0D 00f24262-8147-40f9-8596-2e05da1b9174 FFFFFFFC 0E Microsoft.Extensions.Configuration.Abstractions FFFFFFFB 0E d9c1bcdc-61d6-464d-aaf2-a57074792eee FFFFFFFC 0F Microsoft.Extensions.Configuration.Binder FFFFFFFB 0F 82f98a45-a79b-4897-b4c1-60ff29dec843 FFFFFFFC 10 Microsoft.Extensions.Configuration.CommandLine FFFFFFFB 10 b9bc609b-12c5-4f08-9c93-e2ed76a4e3d0 FFFFFFFC 11 Microsoft.Extensions.Configuration.EnvironmentVariables FFFFFFFB 11 9f60a536-ef95-4c0c-8064-268968949d98 FFFFFFFC 12 Microsoft.Extensions.Configuration.FileExtensions FFFFFFFB 12 526938e8-0679-436a-8983-2b8789a2aa3f FFFFFFFC 13 Microsoft.Extensions.Configuration.Ini FFFFFFFB 13 6822c16d-db4a-498f-bd95-926b7c05b5b2 FFFFFFFC 14 Microsoft.Extensions.Configuration.Json FFFFFFFB 14 b58ebd2b-ce03-44c3-a8ec-5e7d43a3e7fd FFFFFFFC 15 Microsoft.Extensions.Configuration.UserSecrets FFFFFFFB 15 2b0fd1eb-e20f-4ec0-8bc0-96ca8cdf326f FFFFFFFC 16 Microsoft.Extensions.Configuration.Xml FFFFFFFB 16 ff33e47d-4216-465c-b060-f019bd01d3cd FFFFFFFC 17 Microsoft.Extensions.DependencyInjection FFFFFFFB 17 1be23199-72a5-4e7b-82e2-a046f2b2e270 FFFFFFFC 18 Microsoft.Extensions.DependencyInjection.Abstractions FFFFFFFB 18 83dde1bb-82fa-4e3c-af6b-8cef5a0f2e9c FFFFFFFC 19 Microsoft.Extensions.DependencyModel FFFFFFFB 19 56db3d73-7368-4039-92fd-c6c489080639 FFFFFFFC 1A Microsoft.Extensions.FileProviders.Abstractions FFFFFFFB 1A 2aa7ef5a-3538-425a-af93-9d251f7e60b2 FFFFFFFC 1B Microsoft.Extensions.FileProviders.Composite FFFFFFFB 1B c0d1967f-cd7b-4907-b057-b00739e531db FFFFFFFC 1C Microsoft.Extensions.FileProviders.Physical FFFFFFFB 1C cc3ad194-84da-42a8-a070-91a037b8349f FFFFFFFC 1D Microsoft.Extensions.FileSystemGlobbing FFFFFFFB 1D 95606012-b36c-44a0-a31b-933550b4d9db FFFFFFFC 1E Microsoft.Extensions.Hosting FFFFFFFB 1E 3d90c03c-1aca-4d99-958c-0afc3245a60e FFFFFFFC 1F Microsoft.Extensions.Hosting.Abstractions FFFFFFFB 1F 0a1aae22-428d-4ecd-8d2c-86e3f72ded84 FFFFFFFC 20 Microsoft.Extensions.Hosting.Systemd FFFFFFFB 20 abdfc827-1d64-4fc7-9b5b-765cc860ee03 FFFFFFFC 21 Microsoft.Extensions.Hosting.WindowsServices FFFFFFFB 21 07f978cb-45f9-4094-813c-96c73ac616e3 FFFFFFFC 22 Microsoft.Extensions.Http FFFFFFFB 22 79822ddc-ad01-464c-9419-bdb0d2dead68 FFFFFFFC 23 Microsoft.Extensions.Logging FFFFFFFB 23 f6fff29b-8a17-4646-a21c-6a9c6187b0c1 FFFFFFFC 24 Microsoft.Extensions.Logging.Abstractions FFFFFFFB 24 4c6c0d0b-a54d-4891-90f5-862e85382cf2 FFFFFFFC 25 Microsoft.Extensions.Logging.Configuration FFFFFFFB 25 1e398ae2-f7b6-4079-b91b-82bdeac9d6da FFFFFFFC 26 Microsoft.Extensions.Logging.Console FFFFFFFB 26 52c8fddf-386a-49fb-a4bc-1af9861cce14 FFFFFFFC 27 Microsoft.Extensions.Logging.Debug FFFFFFFB 27 404492c0-68d3-4c78-837f-6499befe5ec3 FFFFFFFC 28 Microsoft.Extensions.Logging.EventLog FFFFFFFB 28 411bb2e6-07df-4100-9754-83bbd35eb925 FFFFFFFC 29 Microsoft.Extensions.Logging.EventSource FFFFFFFB 29 e08c4994-b176-4301-b23a-fe1f5076e0fd FFFFFFFC 2A Microsoft.Extensions.Logging.TraceSource FFFFFFFB 2A 2eeac3f4-8d29-44c6-ab08-85d91f255951 FFFFFFFC 2B Microsoft.Extensions.Options FFFFFFFB 2B 9d3ec11e-651b-4cfd-b3ca-d1bef4678e48 FFFFFFFC 2C Microsoft.Extensions.Options.ConfigurationExtensions FFFFFFFB 2C fad0299c-e436-4e75-a6df-b691fbf35da8 FFFFFFFC 2D Microsoft.Extensions.Options.DataAnnotations FFFFFFFB 2D bca0b4c0-a7cf-4585-8e21-cdd55041ca61 FFFFFFFC 2E Microsoft.Extensions.Primitives FFFFFFFB 2E 25ac0c42-fae8-40c8-90f3-45337056130c FFFFFFFC 2F Microsoft.VisualBasic FFFFFFFB 2F f37a6804-e994-48dd-8490-363636f18574 FFFFFFFC 30 Microsoft.VisualBasic.Core FFFFFFFB 30 3595a058-1289-447b-ac6a-7a9e20195abf FFFFFFFC 31 Microsoft.Win32.Primitives FFFFFFFB 31 8071f9c7-b1f6-47d6-bb7d-9dfb822dda66 FFFFFFFC 32 Microsoft.Win32.Registry FFFFFFFB 32 ff885324-159d-42c5-92b5-dc470e53717e FFFFFFFC 33 Microsoft.Win32.Registry.AccessControl FFFFFFFB 33 68a9d9e3-a433-4088-813f-dbe060d0f417 FFFFFFFC 34 Microsoft.Win32.SystemEvents FFFFFFFB 34 1ed8d520-6647-4d4f-a719-b2cf273c0f6e FFFFFFFC 35 mscorlib FFFFFFFB 35 2a9a387b-f2ce-4c79-ad21-c4202bf88b65 FFFFFFFC 36 netstandard FFFFFFFB 36 31888bc9-8ee3-46fb-8ad2-eafb7f683b45 FFFFFFFC 37 Newtonsoft.Json FFFFFFFB 37 c3b63374-76e9-443a-bbc4-d0f246af4e9e FFFFFFFC 38 Newtonsoft.Json.Bson FFFFFFFB 38 4c31d548-7f3e-4c21-bb3f-a39d930bf623 FFFFFFFC 39 OSExtensions FFFFFFFB 39 295b9baa-4041-4dc1-b6b4-41030a91de1c FFFFFFFC 3A runincontext FFFFFFFB 3A ca942b51-0c46-48dc-b722-066c590b54a5 FFFFFFFC 3B System FFFFFFFB 3B e98e8b96-7865-426f-84e9-06b3453bf352 FFFFFFFC 3C System.AppContext FFFFFFFB 3C e7eade89-07b4-4b0b-963b-e02cf8187332 FFFFFFFC 3D System.Buffers FFFFFFFB 3D b01ca54e-66c7-4ec1-9147-27333158ba06 FFFFFFFC 3E System.CodeDom FFFFFFFB 3E 8f83e04b-3ba0-48f0-95c5-0246d3e4b1dc FFFFFFFC 3F System.Collections FFFFFFFB 3F 288ef6e3-828b-43c8-988a-b3f4fffab97f FFFFFFFC 40 System.Collections.Concurrent FFFFFFFB 40 f68ed222-2e98-4251-8988-79abc2e980f4 FFFFFFFC 41 System.Collections.Immutable FFFFFFFB 41 8492c24d-f650-4173-b05d-f3af604a21fc FFFFFFFC 42 System.Collections.NonGeneric FFFFFFFB 42 dd48f88d-edd0-4a89-993c-7e68f062f5e8 FFFFFFFC 43 System.Collections.Specialized FFFFFFFB 43 4489c767-61c2-4afa-85e1-9577d0d8278e FFFFFFFC 44 System.ComponentModel FFFFFFFB 44 a0ee9ad6-9a7b-49da-9abf-5bd5c32712e9 FFFFFFFC 45 System.ComponentModel.Annotations FFFFFFFB 45 88f6e782-ead3-4571-82d0-dd1555672010 FFFFFFFC 46 System.ComponentModel.Composition FFFFFFFB 46 1f061391-1ac4-40ca-9f0a-7572d38bb930 FFFFFFFC 47 System.ComponentModel.Composition.Registration FFFFFFFB 47 ea67c589-bd30-40e4-bc6c-49ae302c2ea4 FFFFFFFC 48 System.ComponentModel.DataAnnotations FFFFFFFB 48 7c593304-a6fc-4650-9937-f2ff56348a91 FFFFFFFC 49 System.ComponentModel.EventBasedAsync FFFFFFFB 49 57ff3d78-4309-4133-bd48-7e186c5219f1 FFFFFFFC 4A System.ComponentModel.Primitives FFFFFFFB 4A e72eadb0-128e-4656-b942-59b351a90fd5 FFFFFFFC 4B System.ComponentModel.TypeConverter FFFFFFFB 4B 9f659f60-5f70-4c1e-8c34-91bc4bb424b3 FFFFFFFC 4C System.Composition.AttributedModel FFFFFFFB 4C f6577ada-f926-4c56-aa50-f5f499c26e62 FFFFFFFC 4D System.Composition.Convention FFFFFFFB 4D 303194f5-e697-456d-bb54-e65933129ac7 FFFFFFFC 4E System.Composition.Hosting FFFFFFFB 4E 6dc235d2-0ddc-4781-95c3-6a4e7337e257 FFFFFFFC 4F System.Composition.Runtime FFFFFFFB 4F 1ff24c75-1737-429c-bec0-682235a9e6d5 FFFFFFFC 50 System.Composition.TypedParts FFFFFFFB 50 2397d591-7ce6-41a3-8bf1-2c1a966f652b FFFFFFFC 51 System.Configuration FFFFFFFB 51 a55776e8-52c1-484e-b20c-96c8c1c7e14e FFFFFFFC 52 System.Configuration.ConfigurationManager FFFFFFFB 52 ae1cce69-3474-4128-9788-2aaa5c910777 FFFFFFFC 53 System.Console FFFFFFFB 53 e5d3f630-452b-405b-af7a-bb822b2b50eb FFFFFFFC 54 System.Core FFFFFFFB 54 9a7dadfc-1cbb-4957-896d-9e57d131a3bd FFFFFFFC 55 System.Data FFFFFFFB 55 ab1caa3c-598d-40a8-bba6-6089e161a313 FFFFFFFC 56 System.Data.Common FFFFFFFB 56 39a38b77-d274-46db-8611-ca2ef0cf3b71 FFFFFFFC 57 System.Data.DataSetExtensions FFFFFFFB 57 a1be3135-11b7-42e6-8489-06b8ec841169 FFFFFFFC 58 System.Data.Odbc FFFFFFFB 58 d57b4c31-59e8-49c9-9cba-62cb8aefea2e FFFFFFFC 59 System.Data.OleDb FFFFFFFB 59 72e8490f-d9a1-4264-a02f-900e421b8421 FFFFFFFC 5A System.Diagnostics.Contracts FFFFFFFB 5A 95adca50-13f0-454c-a0d2-9ddee263a672 FFFFFFFC 5B System.Diagnostics.Debug FFFFFFFB 5B 61cb8dff-7bbd-4277-a105-201a74155521 FFFFFFFC 5C System.Diagnostics.DiagnosticSource FFFFFFFB 5C 975c3ad0-013a-4c86-8d91-6d1b2ac36735 FFFFFFFC 5D System.Diagnostics.EventLog FFFFFFFB 5D 206bcb8c-2635-47ad-8c63-75cd1981793e FFFFFFFC 5E System.Diagnostics.EventLog.Messages FFFFFFFB 5E 14dca2ef-5389-40fd-8759-19c6a4e9fcfb FFFFFFFC 5F System.Diagnostics.FileVersionInfo FFFFFFFB 5F 0e985897-ac43-44a8-88e1-72dc0e9145f3 FFFFFFFC 60 System.Diagnostics.PerformanceCounter FFFFFFFB 60 c0b47e70-4819-42d3-929a-0523c82cb5a6 FFFFFFFC 61 System.Diagnostics.Process FFFFFFFB 61 d8d506d6-95f4-4665-a4e9-101c1a265a49 FFFFFFFC 62 System.Diagnostics.StackTrace FFFFFFFB 62 9c6c876c-b2f8-406b-99fd-dac6b33a0a70 FFFFFFFC 63 System.Diagnostics.TextWriterTraceListener FFFFFFFB 63 9be8a3e5-712c-4f17-9809-038cb5b33e80 FFFFFFFC 64 System.Diagnostics.Tools FFFFFFFB 64 98c505a4-dc08-4182-b653-be291052e1f1 FFFFFFFC 65 System.Diagnostics.TraceSource FFFFFFFB 65 63f8c7f2-8e54-4e59-aee6-50f7c8d2b4aa FFFFFFFC 66 System.Diagnostics.Tracing FFFFFFFB 66 022292b8-7613-451d-ad2e-11e104fc39df FFFFFFFC 67 System.DirectoryServices FFFFFFFB 67 94d4bd92-cec8-4358-a1ef-8373b019cae2 FFFFFFFC 68 System.DirectoryServices.AccountManagement FFFFFFFB 68 5eb1d79c-d5c1-459a-8714-8de2183becf8 FFFFFFFC 69 System.DirectoryServices.Protocols FFFFFFFB 69 7089c28a-bb15-430d-bb1b-3b84e7a54e14 FFFFFFFC 6A System.Drawing FFFFFFFB 6A 75c94d77-f54f-4891-afc4-4f2b8b473a2e FFFFFFFC 6B System.Drawing.Common FFFFFFFB 6B 4ff413d4-c9bf-489c-8795-2cf1c0d7b901 FFFFFFFC 6C System.Drawing.Primitives FFFFFFFB 6C c12a6628-42fc-420c-9f8c-724196113c21 FFFFFFFC 6D System.Dynamic.Runtime FFFFFFFB 6D 4f6aea33-4b8b-411d-a5b6-0020c051b350 FFFFFFFC 6E System.Formats.Asn1 FFFFFFFB 6E 3c78077d-75d6-476d-a244-8505c3b4dd62 FFFFFFFC 6F System.Formats.Cbor FFFFFFFB 6F 2be768d5-1d24-4371-917f-425f6b21dd5b FFFFFFFC 70 System.Globalization FFFFFFFB 70 705fc2d6-d9dc-427c-9bbe-7e7cbea4c1d0 FFFFFFFC 71 System.Globalization.Calendars FFFFFFFB 71 ab25880a-5dad-45c0-99c6-12adf0aaaff5 FFFFFFFC 72 System.Globalization.Extensions FFFFFFFB 72 fa5b2625-caa8-40bf-b8a1-7790cd15ad75 FFFFFFFC 73 System.IO FFFFFFFB 73 56ebd940-73be-40eb-b836-26de8dffa613 FFFFFFFC 74 System.IO.Compression FFFFFFFB 74 8e0142c9-9d4e-4d17-bc90-0bb2f0ca89ce FFFFFFFC 75 System.IO.Compression.Brotli FFFFFFFB 75 225024ad-7605-4250-aa66-380a1d10f4ec FFFFFFFC 76 System.IO.Compression.FileSystem FFFFFFFB 76 6303eb61-479e-48ff-bcd5-eebc3bdf334f FFFFFFFC 77 System.IO.Compression.ZipFile FFFFFFFB 77 b7a249b9-8031-453d-baff-eb36548384a2 FFFFFFFC 78 System.IO.FileSystem FFFFFFFB 78 69c730e8-0fb7-4dd3-bd2c-24926142dcef FFFFFFFC 79 System.IO.FileSystem.AccessControl FFFFFFFB 79 605a642d-3a4d-4856-b1ca-54efce8601a8 FFFFFFFC 7A System.IO.FileSystem.DriveInfo FFFFFFFB 7A fcdba522-7929-406d-a2fb-0aff7c787ed1 FFFFFFFC 7B System.IO.FileSystem.Primitives FFFFFFFB 7B b8b45a41-577d-4cfd-bba3-153ba51cdde8 FFFFFFFC 7C System.IO.FileSystem.Watcher FFFFFFFB 7C 37592105-bdc2-4579-ba7a-3357cfc4808b FFFFFFFC 7D System.IO.IsolatedStorage FFFFFFFB 7D a173839e-e85e-4e9a-a948-c8da2f4eef8b FFFFFFFC 7E System.IO.MemoryMappedFiles FFFFFFFB 7E ed594d88-52ae-4744-87bf-79b4bfbc7be7 FFFFFFFC 7F System.IO.Packaging FFFFFFFB 7F 5a781df5-e0a1-4b8f-97c1-850a2e380d81 FFFFFFFC 80 System.IO.Pipelines FFFFFFFB 80 46f9d71b-ea49-4573-98c9-0d1b57a420cf FFFFFFFC 81 System.IO.Pipes FFFFFFFB 81 baae1098-43eb-4d3d-91b2-d29673115be5 FFFFFFFC 82 System.IO.Pipes.AccessControl FFFFFFFB 82 355832d7-c242-4965-a148-e667025ee806 FFFFFFFC 83 System.IO.Ports FFFFFFFB 83 77d6bc31-b9e6-4da5-b7d5-2975963bc942 FFFFFFFC 84 System.IO.UnmanagedMemoryStream FFFFFFFB 84 f815e624-3391-43aa-b599-8ecc4d6a7b81 FFFFFFFC 85 System.Linq FFFFFFFB 85 ac18d90b-8b57-40ad-8d68-745441d332c9 FFFFFFFC 86 System.Linq.Expressions FFFFFFFB 86 94fdb0ee-080e-41af-917c-803ceffee9ab FFFFFFFC 87 System.Linq.Parallel FFFFFFFB 87 7e2a3f26-e8c6-4ed5-94d5-d9adbef67f3a FFFFFFFC 88 System.Linq.Queryable FFFFFFFB 88 7e1c94e1-9651-42be-ab4d-6a078d8c7339 FFFFFFFC 89 System.Management FFFFFFFB 89 d23e20d3-33b3-47e3-a225-1dbb2cb25721 FFFFFFFC 8A System.Memory FFFFFFFB 8A 78d38f81-6191-4951-be44-e0bae896fdc3 FFFFFFFC 8B System.Memory.Data FFFFFFFB 8B 867cc901-afe3-46b4-a8b3-8c2d691a0f91 FFFFFFFC 8C System.Net FFFFFFFB 8C 429cb17e-6c8a-4f77-8a8f-1d2adb3c9330 FFFFFFFC 8D System.Net.Connections FFFFFFFB 8D 729349fd-d3a9-48ae-9f9e-7e7e5310354e FFFFFFFC 8E System.Net.Http FFFFFFFB 8E 1a31c211-6842-4136-96a3-6bbb0708a5f1 FFFFFFFC 8F System.Net.Http.Json FFFFFFFB 8F 8a7a2b29-7705-44f2-b287-291739873f5b FFFFFFFC 90 System.Net.Http.WinHttpHandler FFFFFFFB 90 dd09e12a-141f-4448-aede-dc27d1966d48 FFFFFFFC 91 System.Net.HttpListener FFFFFFFB 91 29778495-126b-4b99-b5f5-e3584a31bf07 FFFFFFFC 92 System.Net.Mail FFFFFFFB 92 ecc5053b-cec1-4d34-aecb-b030fa6f1e9e FFFFFFFC 93 System.Net.NameResolution FFFFFFFB 93 94cbc7e8-f9f4-45d3-ba3d-1947526a4e9d FFFFFFFC 94 System.Net.NetworkInformation FFFFFFFB 94 ae87e715-4e31-4acb-881a-802bbe8db6e2 FFFFFFFC 95 System.Net.Ping FFFFFFFB 95 031e86d6-3a3d-4968-9708-7ff96aba220b FFFFFFFC 96 System.Net.Primitives FFFFFFFB 96 7edd5476-672b-4fb9-b945-cd2511e829ef FFFFFFFC 97 System.Net.Quic FFFFFFFB 97 24c4d90d-afca-43e7-8a95-cea8f539253e FFFFFFFC 98 System.Net.Requests FFFFFFFB 98 9a639804-5a00-43da-8dd7-4e85b6dc03d7 FFFFFFFC 99 System.Net.Security FFFFFFFB 99 88f3d113-2471-4157-b1dd-f8e7618e458c FFFFFFFC 9A System.Net.ServicePoint FFFFFFFB 9A 186ba071-6fc1-449c-93f5-36e0ebc9faf8 FFFFFFFC 9B System.Net.Sockets FFFFFFFB 9B 4e97e855-7e95-461f-a35c-46b5b3b36a90 FFFFFFFC 9C System.Net.WebClient FFFFFFFB 9C 67594ecd-5244-4d9c-8062-6049c40eb64a FFFFFFFC 9D System.Net.WebHeaderCollection FFFFFFFB 9D 09c8d3e7-e775-4350-8113-638e0cf8aa46 FFFFFFFC 9E System.Net.WebProxy FFFFFFFB 9E 8d6d570c-c9c7-4740-8034-69426450957a FFFFFFFC 9F System.Net.WebSockets FFFFFFFB 9F a0e8b9be-e2f6-493c-a884-349095a0627d FFFFFFFC A0 System.Net.WebSockets.Client FFFFFFFB A0 5647d0d6-8e7f-4555-84c7-f9456a8ac56f FFFFFFFC A1 System.Numerics FFFFFFFB A1 fd0028a3-6e3d-4a3a-b393-9d5a11aad34b FFFFFFFC A2 System.Numerics.Tensors FFFFFFFB A2 ee55b90c-07ed-4a66-b13b-fb8be858d0d3 FFFFFFFC A3 System.Numerics.Vectors FFFFFFFB A3 36b972af-a7fa-428d-bcf7-a33e4f5957a9 FFFFFFFC A4 System.ObjectModel FFFFFFFB A4 13e2f0b0-3912-488f-8b80-db4312cca189 FFFFFFFC A5 System.Private.CoreLib FFFFFFFB A5 7f0a315e-8c78-42e9-8b45-55b6c7120f8d FFFFFFFC A6 System.Private.DataContractSerialization FFFFFFFB A6 da1c3bef-4560-405f-995b-4fa66f3fd90d FFFFFFFC A7 System.Private.Uri FFFFFFFB A7 8151023a-d68f-4f4f-9753-bd3ff3b742ab FFFFFFFC A8 System.Private.Xml FFFFFFFB A8 252f99c2-58f9-440e-9b05-5d6e83da3397 FFFFFFFC A9 System.Private.Xml.Linq FFFFFFFB A9 3596a01c-34a3-405f-9f77-84cd10dad6db FFFFFFFC AA System.Reflection FFFFFFFB AA 54f911d2-8c95-4b4c-b0ee-7f415bc959fe FFFFFFFC AB System.Reflection.Context FFFFFFFB AB f329172c-cb5c-4ab6-a6a1-01da9d7c79f7 FFFFFFFC AC System.Reflection.DispatchProxy FFFFFFFB AC 1b43c93c-2ae0-41ca-a734-3f677299b8fd FFFFFFFC AD System.Reflection.Emit FFFFFFFB AD a46786f0-1883-462a-912b-b2133eb39501 FFFFFFFC AE System.Reflection.Emit.ILGeneration FFFFFFFB AE 75771068-69ab-4a23-9e61-edd752d044ad FFFFFFFC AF System.Reflection.Emit.Lightweight FFFFFFFB AF 8a021070-970d-43be-ab65-7417c3e5e9ca FFFFFFFC B0 System.Reflection.Extensions FFFFFFFB B0 2b4a4247-3250-455c-92cb-c7a7c97a5c2f FFFFFFFC B1 System.Reflection.Metadata FFFFFFFB B1 79c81260-0a5e-4b4a-9d97-0b5a08491060 FFFFFFFC B2 System.Reflection.MetadataLoadContext FFFFFFFB B2 f6e931e8-33c4-484a-aa48-f7c1cf45f97e FFFFFFFC B3 System.Reflection.Primitives FFFFFFFB B3 74342343-07ec-429e-82bd-26703c110eb5 FFFFFFFC B4 System.Reflection.TypeExtensions FFFFFFFB B4 5bb7dc28-09ba-4175-87c6-1a97c4dc6ed1 FFFFFFFC B5 System.Resources.Extensions FFFFFFFB B5 1312848d-8fdd-4c84-8134-b525b7398417 FFFFFFFC B6 System.Resources.Reader FFFFFFFB B6 7abcbd58-35e6-4a2f-8710-9e7b56f2bf93 FFFFFFFC B7 System.Resources.ResourceManager FFFFFFFB B7 df0683f6-706d-4225-b7ee-7d933d61cd22 FFFFFFFC B8 System.Resources.Writer FFFFFFFB B8 073d2dce-2f5c-4189-8853-8f89c876ca62 FFFFFFFC B9 System.Runtime FFFFFFFB B9 a811132c-a8eb-4177-9a49-6dcf2e38fa72 FFFFFFFC BA System.Runtime.Caching FFFFFFFB BA 3864b03d-789c-474b-b151-7d2b78d27328 FFFFFFFC BB System.Runtime.CompilerServices.Unsafe FFFFFFFB BB 234f9e08-8618-4819-b1f7-9b615efd43b4 FFFFFFFC BC System.Runtime.CompilerServices.VisualC FFFFFFFB BC 09b48a11-2be1-49e0-b161-58df7e6cf091 FFFFFFFC BD System.Runtime.Extensions FFFFFFFB BD c76c753b-e945-4770-9bfa-7270a844b1bf FFFFFFFC BE System.Runtime.Handles FFFFFFFB BE d9ccad6f-ee5d-4a95-be25-a0e474dfc99a FFFFFFFC BF System.Runtime.InteropServices FFFFFFFB BF 9a777c1d-1cfa-4aaf-8404-76ff13481179 FFFFFFFC C0 System.Runtime.InteropServices.RuntimeInformation FFFFFFFB C0 0a9dc793-d9f4-49a2-aa19-5e09c4a4b593 FFFFFFFC C1 System.Runtime.Intrinsics FFFFFFFB C1 01931eb8-d72d-405f-b109-cabaaee81bb5 FFFFFFFC C2 System.Runtime.Loader FFFFFFFB C2 b57b2f41-cc62-4148-89c7-b99ce169fed6 FFFFFFFC C3 System.Runtime.Numerics FFFFFFFB C3 188bf85f-9093-44ef-a3da-85de04a01902 FFFFFFFC C4 System.Runtime.Serialization FFFFFFFB C4 ead5b067-f66e-466e-b0a6-f34925af9bfd FFFFFFFC C5 System.Runtime.Serialization.Formatters FFFFFFFB C5 490ac5a4-d7c8-4505-8c6e-bf81d4d36197 FFFFFFFC C6 System.Runtime.Serialization.Json FFFFFFFB C6 b82799a0-09ec-4c7a-9c46-ad6a551d1314 FFFFFFFC C7 System.Runtime.Serialization.Primitives FFFFFFFB C7 cda3dffd-2de6-4ce4-b8d9-1345d741bb78 FFFFFFFC C8 System.Runtime.Serialization.Xml FFFFFFFB C8 6771bbec-1e56-4b44-b156-28d12e837c20 FFFFFFFC C9 System.Security FFFFFFFB C9 19dbaa6c-4d7d-4924-81fd-23772e96e44e FFFFFFFC CA System.Security.AccessControl FFFFFFFB CA 72461ce4-454f-450c-a42f-3c8f9ca5d5d0 FFFFFFFC CB System.Security.Claims FFFFFFFB CB 47c9d7cd-b6aa-4702-a225-6a4e6b840c9e FFFFFFFC CC System.Security.Cryptography.Algorithms FFFFFFFB CC 3d699d6b-5d8a-4892-87b4-0f7d63dc7da3 FFFFFFFC CD System.Security.Cryptography.Cng FFFFFFFB CD ec9b3572-5628-4253-854f-815debbc4c36 FFFFFFFC CE System.Security.Cryptography.Csp FFFFFFFB CE 829f40f4-d610-49f5-812d-06ef1b5a3b0f FFFFFFFC CF System.Security.Cryptography.Encoding FFFFFFFB CF 9efa11b8-ce95-4bc1-ae68-4c9ee6c0cdde FFFFFFFC D0 System.Security.Cryptography.OpenSsl FFFFFFFB D0 960d9023-77f1-4d4b-85b8-5a5e3fb94273 FFFFFFFC D1 System.Security.Cryptography.Pkcs FFFFFFFB D1 8aec6eb7-7257-4282-9265-39485645e1f5 FFFFFFFC D2 System.Security.Cryptography.Primitives FFFFFFFB D2 f3f51959-03f3-4cb0-8a67-ddda1fb3e890 FFFFFFFC D3 System.Security.Cryptography.ProtectedData FFFFFFFB D3 7b5f8987-a272-4f52-a051-d2c02d6bf453 FFFFFFFC D4 System.Security.Cryptography.X509Certificates FFFFFFFB D4 2f675c6a-052b-43ad-abd0-52ff14aaf785 FFFFFFFC D5 System.Security.Cryptography.Xml FFFFFFFB D5 d98a8b9e-9442-483b-abc2-6dc2545b396c FFFFFFFC D6 System.Security.Permissions FFFFFFFB D6 fbb5f333-b4f3-4798-9c9b-f16fa9bdc5b4 FFFFFFFC D7 System.Security.Principal FFFFFFFB D7 18311cd9-6a72-4459-b4e8-a77590da6a75 FFFFFFFC D8 System.Security.Principal.Windows FFFFFFFB D8 7267abb5-35fc-404c-97b3-731cdd71b3ea FFFFFFFC D9 System.Security.SecureString FFFFFFFB D9 94e08146-f6ba-4a7b-8ca4-b074746fd7d3 FFFFFFFC DA System.ServiceModel.Syndication FFFFFFFB DA c753f6dc-a92c-4d87-9c3d-8a66d0645e04 FFFFFFFC DB System.ServiceModel.Web FFFFFFFB DB 6270c497-92ea-4dae-b806-20c856985438 FFFFFFFC DC System.ServiceProcess FFFFFFFB DC bb7aafb9-bcc3-4293-8c89-29a3d36b664c FFFFFFFC DD System.ServiceProcess.ServiceController FFFFFFFB DD 1487d132-9265-4eee-92ed-40696e9491cb FFFFFFFC DE System.Speech FFFFFFFB DE c0d37897-17c4-444e-ac95-dacaf035ce5f FFFFFFFC DF System.Text.Encoding FFFFFFFB DF 0b51cf7a-7675-42f7-802f-067f66e3f76b FFFFFFFC E0 System.Text.Encoding.CodePages FFFFFFFB E0 40a2285b-880d-4f30-a4b0-4ccaf344cb3b FFFFFFFC E1 System.Text.Encoding.Extensions FFFFFFFB E1 43f87b4c-45d4-48fc-b2b2-2c204b0e4215 FFFFFFFC E2 System.Text.Encodings.Web FFFFFFFB E2 79adf650-8fd2-4bcf-9baa-665054afad12 FFFFFFFC E3 System.Text.Json FFFFFFFB E3 818bba67-7483-43bb-8373-cc067d07dafb FFFFFFFC E4 System.Text.RegularExpressions FFFFFFFB E4 d1d5ce47-35ff-4a77-acf5-ae3f8ae86632 FFFFFFFC E5 System.Threading FFFFFFFB E5 d896037a-c8c7-434f-ac86-278e63f74320 FFFFFFFC E6 System.Threading.AccessControl FFFFFFFB E6 1c3da4d6-5004-4912-b309-ca924ed2604d FFFFFFFC E7 System.Threading.Channels FFFFFFFB E7 d0c26d31-320c-497b-a68e-e97ffe7acbb6 FFFFFFFC E8 System.Threading.Overlapped FFFFFFFB E8 ff5536c3-4d17-437f-b8be-f7d76e51e40a FFFFFFFC E9 System.Threading.Tasks FFFFFFFB E9 b6999a53-3cf2-4483-97e5-4f3c010ad660 FFFFFFFC EA System.Threading.Tasks.Dataflow FFFFFFFB EA 795c128e-97bc-4999-a7dc-c490fccc6b76 FFFFFFFC EB System.Threading.Tasks.Extensions FFFFFFFB EB 5492e2c6-fb13-418f-8454-48332947499e FFFFFFFC EC System.Threading.Tasks.Parallel FFFFFFFB EC b48b063f-f4b8-40a7-ae68-bc66cba26578 FFFFFFFC ED System.Threading.Thread FFFFFFFB ED fb8c5239-c080-468d-8a3c-65d1b6657dea FFFFFFFC EE System.Threading.ThreadPool FFFFFFFB EE 8815b845-5d38-4fe9-b74a-74793838627a FFFFFFFC EF System.Threading.Timer FFFFFFFB EF 0eb6e7b8-c139-40a9-8f97-3e385d42d140 FFFFFFFC F0 System.Transactions FFFFFFFB F0 4aeda08e-81e3-483a-8f0b-e83de746b7a9 FFFFFFFC F1 System.Transactions.Local FFFFFFFB F1 8f9c6190-1f65-4ac0-963a-c113a2d8d588 FFFFFFFC F2 System.ValueTuple FFFFFFFB F2 9e49247e-8b7f-431c-8998-f38323fce636 FFFFFFFC F3 System.Web FFFFFFFB F3 d00d5b6e-8481-4d05-b046-609622fbb160 FFFFFFFC F4 System.Web.HttpUtility FFFFFFFB F4 ca8aeafc-d88a-4e95-a503-4e02e26b574e FFFFFFFC F5 System.Windows FFFFFFFB F5 1e77a2f8-2641-4b2d-b66e-96aaa25639ea FFFFFFFC F6 System.Windows.Extensions FFFFFFFB F6 ce4171ed-557f-446f-bbc0-ae8d378b2408 FFFFFFFC F7 System.Xml FFFFFFFB F7 fc6d67a6-5bf2-4952-a137-592c2228e98a FFFFFFFC F8 System.Xml.Linq FFFFFFFB F8 af64a95d-87cf-4e13-8d91-7fb7434860cf FFFFFFFC F9 System.Xml.ReaderWriter FFFFFFFB F9 8f155018-3d66-4010-9eeb-09ce54748f61 FFFFFFFC FA System.Xml.Serialization FFFFFFFB FA dd22809d-3ae0-49aa-9945-72ec249e5d45 FFFFFFFC FB System.Xml.XDocument FFFFFFFB FB 4a709068-323a-4d6b-a068-d139041a3162 FFFFFFFC FC System.Xml.XmlDocument FFFFFFFB FC 913f2596-bbf0-4302-a5ca-699cecd3fb8f FFFFFFFC FD System.Xml.XmlSerializer FFFFFFFB FD 63c129bd-e8bc-4d05-8fe6-ca13a4fa7c4e FFFFFFFC FE System.Xml.XPath FFFFFFFB FE 46ba364b-3ce3-4b3e-b848-2b5162ab3404 FFFFFFFC FF System.Xml.XPath.XDocument FFFFFFFB FF 085ddf2b-4eb8-4915-be8c-c40159c2428f FFFFFFFC 100 TraceReloggerLib FFFFFFFB 100 0252cd3d-c5cd-4c52-98ac-b9c4425ea4c9 FFFFFFFC 101 WindowsBase FFFFFFFB 101 6547bf98-e00e-4035-8df9-a09354761da3 |
Apparently the change is missing some dependencies. I'm seeing a couple of places constructing the perfmap path with the GUID inside in SDK, that will likely need fixing even though I'm not yet fully clear on whether it's sufficient to fix the failures hitting the current PR. Considering the latency in bumping up SDK versions in the runtime repo we should try to figure out what to do here ASAP. |
@trylek, thanks for implementing this! To make sure I understand correctly:
The first GUID is a hash of all of the MVIDs. In order to ensure we have the right set of symbols, we need to compare records Do I have that all right? Also, as part of this change, can we also rename the output file to be |
@brianrob - yes, your understanding matches my assumptions. Please let me know if you need additional info and / or if you find the input assembly list or MVIDs superfluous. I also need to figure out how to harmonize this change with the SDK repo as the {MVID} paths are hard-coded in the various scripts and C# source code dealing with Crossgen / Crossgen2 compilation, I suspect we should temporarily honor both, after all the {MVID} variant will need to stay in the SDK for compilation targeting .NET Core 5 AFAIK. |
I have spent some time thinking about the sequencing problem. I think that the safest sequence looks like this:
Thanks Tomas P.S. For now I'm working on (1) that I hope to finish before going on vacation on Friday or during next week. Please let me know if you have any concerns with the overall plan and / or whether you see any opportunities for its simplification. |
Sounds great. Thanks @trylek! |
I have expanded the PerfMap format produced by Crossgen2 and R2RDump to produce metadata in form of pseudo-symbol records with high addresses. In this version I have implemented five metadata entries - output GUID, target OS, target architecture, input assembly names and input assembly MVIDs. I have verified for System.Private.CoreLib and for the composite framework that Crossgen2 and R2RDump produce identical metadata. Thanks Tomas
1) Remove the detailed input assembly / MVID list as superfluous and potentially regressing average perfmap size. This information can be extracted from the composite R2R executable if needed. 2) Rename perfmap extension to "ni.r2rmap" per Brian's PR feedback. I haven't yet addressed the counterpart Arcade / SDK changes, I'll look into them next. Thanks Tomas
Today, two PerfMap formats exist: (0) Legacy format produced by Crossgen1 with {MVID} in the file name. (1) New format produced by Crossgen2 / R2RDump without the {MVID} and with r2rmap extension. I haven't conditioned production of the new metadata, it gets produced even for format version 0 (legacy). I believe this is more useful for starting work on adapting perfmap consumers to use the new metadata. As next step I'll work on SDK and Arcade fixes for support of the new PerfMap format. Once all these changes land in the runtime repo, we can bump up the default format produced by Crossgen2 to 1. Thanks Tomas
I have modified the change based on my yesterday proposal. I expect the tests to start passing now, please review the change when you have a chance. |
* origin/main: (27 commits) [mono][llvm] Only emit 'LLVM failed' messages on verbosity > 0. (dotnet#55060) Http2Stream throws a wrapped Http2ConnectionException on GO_AWAY (dotnet#54625) [main] Update dependencies from dnceng/internal/dotnet-optimization dotnet/arcade dotnet/xharness dotnet/hotreload-utils (dotnet#55007) disable a failing test. (dotnet#55063) [mono][wasm] Disable some tests which crash on AOT. (dotnet#55054) Fix fix_allocation_context for regions (dotnet#54931) Delete stale references to System.IO.FileSystem.Primitives (dotnet#55041) Add binplaced analyzers to ASP.NET transport package (dotnet#55042) [mono] Enable many HardwareIntrinsic tests on wasm Delete `compQuirkForPPP`. (dotnet#55050) [Mono] Condition Workload AOT import to be osx only (dotnet#55040) package native quic library (dotnet#54992) Make GlobalizationMode code consistent (dotnet#55039) Expand PerfMap format to support metadata for symbol indexation (dotnet#53792) [debugger]Componentize debugger (dotnet#54887) [Mono] Include loaded interpreter methods as EventPipe session rundown method events. (dotnet#54953) Delete stale ActiveIssue from HttpHeadersTest (dotnet#55027) Poison address-exposed user variables in debug (dotnet#54685) Recategorize emsdk dependency (dotnet#55028) Remove the the wasm AOT specific test project exclusions (dotnet#54988) ...
I have expanded the PerfMap format produced by Crossgen2 and
R2RDump to produce metadata in form of pseudo-symbol records with
high addresses. In this version I have implemented five metadata
entries - output GUID, target OS, target architecture, input
assembly names and input assembly MVIDs. I have verified for
System.Private.CoreLib and for the composite framework that
Crossgen2 and R2RDump produce identical metadata.
Thanks
Tomas
/cc @dotnet/crossgen-contrib