{"action":"created","issue":{"url":"https://api.github.com/repos/dotnet/coreclr/issues/15364","repository_url":"https://api.github.com/repos/dotnet/coreclr","labels_url":"https://api.github.com/repos/dotnet/coreclr/issues/15364/labels{/name}","comments_url":"https://api.github.com/repos/dotnet/coreclr/issues/15364/comments","events_url":"https://api.github.com/repos/dotnet/coreclr/issues/15364/events","html_url":"https://github.com/dotnet/coreclr/issues/15364","id":279157354,"number":15364,"title":"Port optimizations to TryFormat and ToString from the UTF-8 formatter","user":{"login":"ahsonkhan","id":6527137,"avatar_url":"https://avatars1.githubusercontent.com/u/6527137?v=4","gravatar_id":"","url":"https://api.github.com/users/ahsonkhan","html_url":"https://github.com/ahsonkhan","followers_url":"https://api.github.com/users/ahsonkhan/followers","following_url":"https://api.github.com/users/ahsonkhan/following{/other_user}","gists_url":"https://api.github.com/users/ahsonkhan/gists{/gist_id}","starred_url":"https://api.github.com/users/ahsonkhan/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ahsonkhan/subscriptions","organizations_url":"https://api.github.com/users/ahsonkhan/orgs","repos_url":"https://api.github.com/users/ahsonkhan/repos","events_url":"https://api.github.com/users/ahsonkhan/events{/privacy}","received_events_url":"https://api.github.com/users/ahsonkhan/received_events","type":"User","site_admin":false},"labels":[{"id":517089971,"url":"https://api.github.com/repos/dotnet/coreclr/labels/area-System.Runtime","name":"area-System.Runtime","color":"d4c5f9","default":false},{"id":191917125,"url":"https://api.github.com/repos/dotnet/coreclr/labels/tenet-performance","name":"tenet-performance","color":"c2e0c6","default":false},{"id":173492976,"url":"https://api.github.com/repos/dotnet/coreclr/labels/up-for-grabs","name":"up-for-grabs","color":"009800","default":false}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":{"url":"https://api.github.com/repos/dotnet/coreclr/milestones/5","html_url":"https://github.com/dotnet/coreclr/milestone/5","labels_url":"https://api.github.com/repos/dotnet/coreclr/milestones/5/labels","id":1328081,"number":5,"title":"Future","description":"Milestone tracking issues not triaged to a planned release. Work in this milestone may happen, or may not: it is not committed.","creator":{"login":"joshfree","id":1302850,"avatar_url":"https://avatars1.githubusercontent.com/u/1302850?v=4","gravatar_id":"","url":"https://api.github.com/users/joshfree","html_url":"https://github.com/joshfree","followers_url":"https://api.github.com/users/joshfree/followers","following_url":"https://api.github.com/users/joshfree/following{/other_user}","gists_url":"https://api.github.com/users/joshfree/gists{/gist_id}","starred_url":"https://api.github.com/users/joshfree/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/joshfree/subscriptions","organizations_url":"https://api.github.com/users/joshfree/orgs","repos_url":"https://api.github.com/users/joshfree/repos","events_url":"https://api.github.com/users/joshfree/events{/privacy}","received_events_url":"https://api.github.com/users/joshfree/received_events","type":"User","site_admin":false},"open_issues":1442,"closed_issues":1064,"state":"open","created_at":"2015-09-29T00:26:07Z","updated_at":"2018-04-06T14:26:36Z","due_on":null,"closed_at":null},"comments":2,"created_at":"2017-12-04T21:31:34Z","updated_at":"2018-04-06T14:56:22Z","closed_at":null,"author_association":"MEMBER","body":"We can optimize TryFormat/ToString for 32-bit.\r\nhttps://github.com/dotnet/coreclr/blob/master/src/mscorlib/shared/System/Number.Formatting.cs\r\n\r\nAlso, it is faster to first count the digits and then output backwards rather than outputting in reverse and then reversing it.\r\n\r\nSee related PRs from where we can port the optimizations: \r\n- https://github.com/dotnet/corefx/pull/25424#issuecomment-347744346\r\n- https://github.com/dotnet/corefx/pull/25626#issuecomment-348798209\r\n\r\ncc @stephentoub, @jkotas"},"comment":{"url":"https://api.github.com/repos/dotnet/coreclr/issues/comments/379279201","html_url":"https://github.com/dotnet/coreclr/issues/15364#issuecomment-379279201","issue_url":"https://api.github.com/repos/dotnet/coreclr/issues/15364","id":379279201,"user":{"login":"Tornhoof","id":7989549,"avatar_url":"https://avatars1.githubusercontent.com/u/7989549?v=4","gravatar_id":"","url":"https://api.github.com/users/Tornhoof","html_url":"https://github.com/Tornhoof","followers_url":"https://api.github.com/users/Tornhoof/followers","following_url":"https://api.github.com/users/Tornhoof/following{/other_user}","gists_url":"https://api.github.com/users/Tornhoof/gists{/gist_id}","starred_url":"https://api.github.com/users/Tornhoof/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Tornhoof/subscriptions","organizations_url":"https://api.github.com/users/Tornhoof/orgs","repos_url":"https://api.github.com/users/Tornhoof/repos","events_url":"https://api.github.com/users/Tornhoof/events{/privacy}","received_events_url":"https://api.github.com/users/Tornhoof/received_events","type":"User","site_admin":false},"created_at":"2018-04-06T14:56:22Z","updated_at":"2018-04-06T14:56:22Z","author_association":"NONE","body":"Maybe for reference between CoreCLR and Utf8Formatter, especially DateTime could use a bit of love with formatting option 'o'.\r\n\r\n``` ini\r\n\r\nBenchmarkDotNet=v0.10.13, OS=Windows 10.0.17133\r\nIntel Core i7-4790K CPU 4.00GHz (Haswell), 1 CPU, 8 logical cores and 4 physical cores\r\nFrequency=3906250 Hz, Resolution=256.0000 ns, Timer=TSC\r\n.NET Core SDK=2.1.300-preview1-008174\r\n  [Host]     : .NET Core 2.1.0-preview3-26406-03 (CoreCLR 4.6.26405.01, CoreFX 4.6.26405.01), 64bit RyuJIT\r\n  DefaultJob : .NET Core 2.1.0-preview3-26406-03 (CoreCLR 4.6.26405.01, CoreFX 4.6.26405.01), 64bit RyuJIT\r\n\r\n\r\n```\r\n|                   Method |      Mean |     Error |    StdDev |  Gen 0 | Allocated |\r\n|------------------------- |----------:|----------:|----------:|-------:|----------:|\r\n|       &#39;DateTime CoreCLR&#39; | 301.38 ns | 0.1300 ns | 0.1085 ns | 0.0224 |      96 B |\r\n| &#39;DateTime Utf8Formatter&#39; |  65.48 ns | 0.0219 ns | 0.0194 ns | 0.0151 |      64 B |\r\n|          &#39;Int64 CoreCLR&#39; |  61.36 ns | 0.0280 ns | 0.0262 ns | 0.0132 |      56 B |\r\n|    &#39;Int64 Utf8Formatter&#39; |  29.88 ns | 0.0056 ns | 0.0043 ns | 0.0152 |      64 B |\r\n|         &#39;Double CoreCLR&#39; | 172.05 ns | 0.0891 ns | 0.0695 ns | 0.0112 |      48 B |\r\n|   &#39;Double Utf8Formatter&#39; | 201.66 ns | 0.0619 ns | 0.0549 ns | 0.0341 |     144 B |\r\n|        &#39;Decimal CoreCLR&#39; |  98.98 ns | 0.0466 ns | 0.0364 ns | 0.0113 |      48 B |\r\n|  &#39;Decimal Utf8Formatter&#39; | 103.14 ns | 0.2039 ns | 0.1908 ns | 0.0151 |      64 B |\r\n|           &#39;Guid CoreCLR&#39; |  54.60 ns | 0.0256 ns | 0.0227 ns | 0.0247 |     104 B |\r\n|     &#39;Guid Utf8Formatter&#39; |  42.63 ns | 0.1325 ns | 0.1035 ns | 0.0152 |      64 B |"}}
{"actor":{"display_login":"Tornhoof"}}