Skip to content

perf(http-client-csharp): parallelize SDK regeneration#11362

Draft
live1206 wants to merge 4 commits into
microsoft:mainfrom
live1206:perf/csharp-overall-regen
Draft

perf(http-client-csharp): parallelize SDK regeneration#11362
live1206 wants to merge 4 commits into
microsoft:mainfrom
live1206:perf/csharp-overall-regen

Conversation

@live1206

@live1206 live1206 commented Jul 23, 2026

Copy link
Copy Markdown
Contributor

Summary

  • regenerate matching Azure SDK projects directly with bounded parallelism on one pipeline agent instead of processing service directories serially
  • install tsp-client and build the shared client plugin once, then skip those repeated setup targets in each project
  • report setup time, total project regeneration time, generator timing traces, failures, and the 20 slowest projects
  • remove the service-specific ai serialization workaround now that configured plugin builds use process-isolated outputs

Pipeline job-level fan-out is intentionally deferred to a separate change.

Addresses #11361.

Validation

  • discovered all 243 currently matching SDK projects, each with one unique src project
  • regenerated App Configuration and Resource Manager Advisor concurrently; both completed successfully and produced no SDK repository diff
  • built the C# emitter package
  • passed Agent Cop checks
  • validated PowerShell and pipeline YAML syntax

Follow-up validation

Run the publish pipeline with both Azure data-plane and management-plane regeneration enabled and compare its phase summary and total elapsed time with the previous serial run.

Preinstall shared tooling once, regenerate matching SDK projects with bounded parallelism, and report per-project timing.

Refs microsoft#11361

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 6626962a-f09e-496d-8a15-d2d9fd96d09d
@microsoft-github-policy-service microsoft-github-policy-service Bot added the emitter:client:csharp Issue for the C# client emitter: @typespec/http-client-csharp label Jul 23, 2026
@pkg-pr-new

pkg-pr-new Bot commented Jul 23, 2026

Copy link
Copy Markdown

Open in StackBlitz

npm i https://pkg.pr.new/@typespec/http-client-csharp@11362

commit: af22ddb

@github-actions

Copy link
Copy Markdown
Contributor

No changes needing a change description found.

Split full Azure SDK regeneration across 18 pipeline jobs, pin every shard to one azure-sdk-for-net commit, and aggregate their binary patches before creating the final PR.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Copilot-Session: 6626962a-f09e-496d-8a15-d2d9fd96d09d
@live1206 live1206 changed the title perf(http-client-csharp): parallelize SDK regeneration perf(http-client-csharp): shard Azure SDK regeneration Jul 23, 2026
Keep SDK regeneration on one pipeline agent and defer job-level fan-out to a separate change.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Copilot-Session: 6626962a-f09e-496d-8a15-d2d9fd96d09d
@live1206 live1206 changed the title perf(http-client-csharp): shard Azure SDK regeneration perf(http-client-csharp): parallelize SDK regeneration Jul 23, 2026
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Copilot-Session: ec786e41-5618-4414-9552-1c28e2362114
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

emitter:client:csharp Issue for the C# client emitter: @typespec/http-client-csharp

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant