Skip to content

Commit ec9cf12

Browse files
authored
Merge pull request #104925 from carlossanlop/release/6.0-staging
[manual] Merge release/6.0-staging into release/6.0
2 parents 67b32df + 2913386 commit ec9cf12

File tree

99 files changed

+6210
-5791
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

99 files changed

+6210
-5791
lines changed

docs/design/features/dotnet-pgo.md

Lines changed: 3 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,21 +1,13 @@
11
# dotnet-pgo Spec
22
Utilize trace data for improving application performance
33

4-
NOTE: This documentation page contains information on some features that are still work-in-progress.
5-
64
## Intro
75

86
The dotnet-pgo tool is a cross-platform CLI global tool that enables conversion of traces of .NET Core applications collected via dotnet-trace, ETW, perfview, perfcollect, LTTNG to be used to improve the performance of an application or library.
97

108
## Installing dotnet-pgo
119

12-
The first step is to install the dotnet-pgo CLI global tool.
13-
14-
```cmd
15-
$ dotnet tool install --global dotnet-pgo
16-
You can invoke the tool using the following command: dotnet-pgo
17-
Tool 'dotnet-pgo' (version '6.0.47001') was successfully installed.
18-
```
10+
The only way to use dotnet-pgo is to build it in the runtime repo. To learn how to build the runtime, consult the [how to build](https://github.com/dotnet/runtime/tree/main/docs/workflow/building/coreclr) docs for Windows, macOS, or Linux.
1911

2012
## Using dotnet-pgo to optimize an application
2113

@@ -37,14 +29,14 @@ set COMPLUS_TC_QuickJitForLoops=1
3729
set COMPLUS_TC_CallCountThreshold=10000
3830
set COMPLUS_ReadyToRun=0
3931
40-
dotnet-trace collect --providers Microsoft-Windows-DotNETRuntime:0x1E000080018:4 -- bin\Release\net6.0\pgotest.exe
32+
dotnet-trace collect --providers Microsoft-Windows-DotNETRuntime:0x1E000080018:4 -- bin\Release\net{version-number-goes-here}.0\pgotest.exe
4133
4234
set COMPLUS_TieredPGO=
4335
set COMPLUS_TC_QuickJitForLoops=
4436
set COMPLUS_TC_CallCountThreshold=
4537
set COMPLUS_ReadyToRun=
4638
47-
dotnet-pgo create-mibc --trace trace.nettrace --output trace.mibc
39+
${YOUR-REPO-ROOT}\artifacts\bin\coreclr\{OS}.{ARCHITECTURE}.{CONFIGURATION}\dotnet-pgo create-mibc --trace trace.nettrace --output trace.mibc
4840
4941
dotnet publish --runtime win-x64 -p:PublishReadyToRun=true -p:ReadyToRunOptimizationData=trace.mibc
5042
```

eng/Version.Details.xml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
<Dependencies>
22
<ProductDependencies>
3-
<Dependency Name="Microsoft.NETCore.Runtime.ICU.Transport" Version="6.0.0-rtm.24269.3">
3+
<Dependency Name="Microsoft.NETCore.Runtime.ICU.Transport" Version="6.0.0-rtm.24315.1">
44
<Uri>https://github.com/dotnet/icu</Uri>
5-
<Sha>def3524876b6b84a72e8ed02db6077f9c0ce8a75</Sha>
5+
<Sha>20d255e341e98186edf70b24aa52fdd81797cc51</Sha>
66
</Dependency>
77
<Dependency Name="System.Net.MsQuic.Transport" Version="6.0.0-servicing.22205.1">
88
<Uri>https://github.com/dotnet/msquic</Uri>
@@ -242,9 +242,9 @@
242242
<Uri>https://dev.azure.com/dnceng/internal/_git/dotnet-optimization</Uri>
243243
<Sha>d50065944d8b41d804448a7056351481d583ad3d</Sha>
244244
</Dependency>
245-
<Dependency Name="Microsoft.DotNet.HotReload.Utils.Generator.BuildTool" Version="6.0.0-alpha.0.24271.2">
245+
<Dependency Name="Microsoft.DotNet.HotReload.Utils.Generator.BuildTool" Version="6.0.0-alpha.0.24362.1">
246246
<Uri>https://github.com/dotnet/hotreload-utils</Uri>
247-
<Sha>6f095cd6901ed48a469289f7f4f91d30a420d1ad</Sha>
247+
<Sha>279b1ac2439ff27e32eb574a4b8e0d1087c09c8e</Sha>
248248
</Dependency>
249249
<Dependency Name="System.Runtime.Numerics.TestData" Version="6.0.0-beta.24271.2">
250250
<Uri>https://github.com/dotnet/runtime-assets</Uri>

eng/Versions.props

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -145,7 +145,7 @@
145145
<MicrosoftNETTestSdkVersion>17.4.0-preview-20220707-01</MicrosoftNETTestSdkVersion>
146146
<MicrosoftDotNetXHarnessTestRunnersXunitVersion>6.0.0-prerelease.24224.2</MicrosoftDotNetXHarnessTestRunnersXunitVersion>
147147
<MicrosoftDotNetXHarnessCLIVersion>6.0.0-prerelease.24224.2</MicrosoftDotNetXHarnessCLIVersion>
148-
<MicrosoftDotNetHotReloadUtilsGeneratorBuildToolVersion>6.0.0-alpha.0.24271.2</MicrosoftDotNetHotReloadUtilsGeneratorBuildToolVersion>
148+
<MicrosoftDotNetHotReloadUtilsGeneratorBuildToolVersion>6.0.0-alpha.0.24362.1</MicrosoftDotNetHotReloadUtilsGeneratorBuildToolVersion>
149149
<XUnitVersion>2.4.2-pre.9</XUnitVersion>
150150
<XUnitRunnerVisualStudioVersion>2.4.2</XUnitRunnerVisualStudioVersion>
151151
<CoverletCollectorVersion>1.3.0</CoverletCollectorVersion>
@@ -162,7 +162,7 @@
162162
<MicrosoftNETILLinkTasksVersion>6.0.100-1.21459.1</MicrosoftNETILLinkTasksVersion>
163163
<MicrosoftNETILLinkAnalyzerPackageVersion>$(MicrosoftNETILLinkTasksVersion)</MicrosoftNETILLinkAnalyzerPackageVersion>
164164
<!-- ICU -->
165-
<MicrosoftNETCoreRuntimeICUTransportVersion>6.0.0-rtm.24269.3</MicrosoftNETCoreRuntimeICUTransportVersion>
165+
<MicrosoftNETCoreRuntimeICUTransportVersion>6.0.0-rtm.24315.1</MicrosoftNETCoreRuntimeICUTransportVersion>
166166
<!-- MsQuic -->
167167
<SystemNetMsQuicTransportVersion>6.0.0-servicing.22205.1</SystemNetMsQuicTransportVersion>
168168
<!-- Mono LLVM -->

eng/pipelines/common/build-coreclr-and-libraries-job.yml

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,6 @@ parameters:
77
container: ''
88
testGroup: ''
99
crossBuild: false
10-
crossrootfsDir: ''
1110
timeoutInMinutes: ''
1211
signBinaries: false
1312
stagedBuild: false
@@ -27,7 +26,6 @@ jobs:
2726
container: ${{ parameters.container }}
2827
testGroup: ${{ parameters.testGroup }}
2928
crossBuild: ${{ parameters.crossBuild }}
30-
crossrootfsDir: ${{ parameters.crossrootfsDir }}
3129
timeoutInminutes: ${{ parameters.timeoutInMinutes }}
3230
signBinaries: ${{ parameters.signBinaries }}
3331
stagedBuild: ${{ parameters.stagedBuild }}
@@ -46,7 +44,6 @@ jobs:
4644
container: ${{ parameters.container }}
4745
testGroup: ${{ parameters.testGroup }}
4846
crossBuild: ${{ parameters.crossBuild }}
49-
crossrootfsDir: ${{ parameters.crossrootfsDir }}
5047
timeoutInminutes: ${{ parameters.timeoutInMinutes }}
5148
variables: ${{ parameters.variables }}
5249
pool: ${{ parameters.pool }}

eng/pipelines/common/global-build-job.yml

Lines changed: 48 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,6 @@ parameters:
77
osSubgroup: ''
88
container: ''
99
crossBuild: false
10-
crossrootfsDir: ''
1110
variables: []
1211
targetRid: ''
1312
timeoutInMinutes: ''
@@ -29,9 +28,11 @@ parameters:
2928
enableRichCodeNavigation: false
3029
richCodeNavigationLanguage: 'csharp'
3130
richCodeNavigationEnvironment: 'production'
31+
templatePath: 'templates'
32+
preBuildSteps: []
3233

3334
jobs:
34-
- template: /eng/common/templates/job/job.yml
35+
- template: /eng/common/${{ parameters.templatePath }}/job/job.yml
3536
parameters:
3637
name: ${{ format('build_{0}{1}_{2}_{3}_{4}', parameters.osGroup, parameters.osSubgroup, parameters.archType, parameters.buildConfig, parameters.nameSuffix) }}
3738
displayName: ${{ format('Build {0}{1} {2} {3} {4}', parameters.osGroup, parameters.osSubgroup, parameters.archType, parameters.buildConfig, parameters.nameSuffix) }}
@@ -64,6 +65,8 @@ jobs:
6465

6566
- name: _osParameter
6667
value: -os ${{ parameters.osGroup }}
68+
- name: _archParameter
69+
value: -arch ${{ parameters.archType }}
6770

6871
- ${{ if and(eq(parameters.osGroup, 'Linux'), eq(parameters.osSubGroup, '_musl')) }}:
6972
- name: _osParameter
@@ -143,7 +146,7 @@ jobs:
143146
path: '$(Build.SourcesDirectory)/artifacts/obj/mono/offsetfiles'
144147

145148
- ${{ if eq(parameters.buildingOnSourceBuildImage, true) }}:
146-
- template: /eng/common/templates/steps/source-build.yml
149+
- template: /eng/common/${{ parameters.templatePath }}/steps/source-build.yml
147150
parameters:
148151
platform:
149152
buildScript: $(_sclEnableCommand) $(Build.SourcesDirectory)$(dir)build$(scriptExt)
@@ -170,12 +173,36 @@ jobs:
170173
- script: $(Build.SourcesDirectory)\eng\common\init-tools-native.cmd -InstallDirectory $(Build.SourcesDirectory)\native-tools -Force
171174
displayName: Install native dependencies
172175

176+
- ${{ if ne(parameters.preBuildSteps,'') }}:
177+
- ${{ each preBuildStep in parameters.preBuildSteps }}:
178+
- ${{ if ne(preBuildStep.template, '') }}:
179+
- template: ${{ preBuildStep.template }}
180+
parameters:
181+
osGroup: ${{ parameters.osGroup }}
182+
osSubgroup: ${{ parameters.osSubgroup }}
183+
archType: ${{ parameters.archType }}
184+
buildConfig: ${{ parameters.buildConfig }}
185+
runtimeFlavor: ${{ parameters.runtimeFlavor }}
186+
runtimeVariant: ${{ parameters.runtimeVariant }}
187+
helixQueues: ${{ parameters.helixQueues }}
188+
targetRid: ${{ parameters.targetRid }}
189+
nameSuffix: ${{ parameters.nameSuffix }}
190+
platform: ${{ parameters.platform }}
191+
shouldContinueOnError: ${{ parameters.shouldContinueOnError }}
192+
${{ if ne(preBuildStep.forwardedParameters, '') }}:
193+
${{ each parameter in preBuildStep.forwardedParameters }}:
194+
${{ parameter }}: ${{ parameters[parameter] }}
195+
${{ if ne(preBuildStep.parameters, '') }}:
196+
${{ insert }}: ${{ preBuildStep.parameters }}
197+
- ${{ else }}:
198+
- ${{ preBuildStep }}
199+
173200
# Build
174-
- ${{ if eq(parameters.buildingOnSourceBuildImage, false) }}:
175-
- script: $(_sclEnableCommand) $(Build.SourcesDirectory)$(dir)build$(scriptExt) -ci -arch ${{ parameters.archType }} $(_osParameter) ${{ parameters.buildArgs }} $(_officialBuildParameter) $(_crossBuildPropertyArg) $(_cxx11Parameter) $(_richCodeNavigationParam) $(_buildDarwinFrameworksParameter)
176-
displayName: Build product
177-
${{ if eq(parameters.useContinueOnErrorDuringBuild, true) }}:
178-
continueOnError: ${{ parameters.shouldContinueOnError }}
201+
- template: /eng/pipelines/common/templates/global-build-step.yml
202+
parameters:
203+
buildArgs: ${{ parameters.buildArgs }}
204+
useContinueOnErrorDuringBuild: ${{ parameters.useContinueOnErrorDuringBuild }}
205+
shouldContinueOnError: ${{ parameters.shouldContinueOnError }}
179206

180207
- ${{ if in(parameters.osGroup, 'OSX', 'iOS', 'tvOS', 'Android') }}:
181208
- script: |
@@ -209,11 +236,16 @@ jobs:
209236
- ${{ else }}:
210237
- ${{ postBuildStep }}
211238

212-
- task: PublishBuildArtifacts@1
213-
displayName: Publish Logs
214-
inputs:
215-
PathtoPublish: '$(Build.SourcesDirectory)/artifacts/log/'
216-
PublishLocation: Container
217-
ArtifactName: Logs_Build_${{ parameters.osGroup }}_${{ parameters.osSubGroup }}_${{ parameters.archType }}_${{ parameters.buildConfig }}_${{ parameters.nameSuffix }}
218-
continueOnError: true
219-
condition: always()
239+
- template: /eng/pipelines/common/templates/publish-build-artifacts.yml
240+
parameters:
241+
isOfficialBuild: ${{ parameters.isOfficialBuild }}
242+
displayName: Publish Logs
243+
inputs:
244+
PathtoPublish: '$(Build.SourcesDirectory)/artifacts/log/'
245+
PublishLocation: Container
246+
${{ if notin(parameters.osGroup, 'browser', 'wasi') }}:
247+
ArtifactName: Logs_Build_Attempt$(System.JobAttempt)_${{ parameters.osGroup }}_${{ parameters.osSubGroup }}_${{ parameters.archType }}_${{ parameters.buildConfig }}_${{ parameters.nameSuffix }}
248+
${{ if in(parameters.osGroup, 'browser', 'wasi') }}:
249+
ArtifactName: Logs_Build_Attempt$(System.JobAttempt)_${{ parameters.osGroup }}_${{ parameters.archType }}_${{ parameters.hostedOs }}_${{ parameters.buildConfig }}_${{ parameters.nameSuffix }}
250+
continueOnError: true
251+
condition: always()

eng/pipelines/common/macos-sign-with-entitlements.yml

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -28,10 +28,15 @@ steps:
2828
includeRootFolder: true
2929
replaceExistingArchive: true
3030

31-
- task: SFP.build-tasks.custom-build-task-1.EsrpCodeSigning@1
31+
- task: EsrpCodeSigning@5
3232
displayName: 'ESRP CodeSigning'
3333
inputs:
34-
ConnectedServiceName: 'ESRP CodeSigning'
34+
ConnectedServiceName: 'DotNet-Engineering-Services_KeyVault'
35+
AppRegistrationClientId: '28ec6507-2167-4eaa-a294-34408cf5dd0e'
36+
AppRegistrationTenantId: '72f988bf-86f1-41af-91ab-2d7cd011db47'
37+
AuthAKVName: 'EngKeyVault'
38+
AuthCertName: 'DotNetCore-ESRP-AuthCert'
39+
AuthSignCertName: 'DotNetCore-ESRP-AuthSignCert'
3540
FolderPath: '$(Build.ArtifactStagingDirectory)/'
3641
Pattern: 'mac_entitled_to_sign.zip'
3742
UseMinimatch: true

0 commit comments

Comments
 (0)