dotnet-installer/scripts
Andrew Stanton-Nurse ef0ca39da1 Memory usage improvements in build (#2626)
* Use a WorkspaceContext in dotnet-build to cache project data across
multiple compilations in a single build action
* Dramatically reduce string and object duplication by introducing a
"Symbol Table" that shares instances of NuGetVersion, NuGetFramework,
VersionRange and string across multiple lock-file parses

Test Results:
* Testing was done by compiling Microsoft.AspNetCore.Mvc (and it's
dependencies) and taking memory snapshots after each compilation in
dotMemory
* We used to allocate ~3MB and deallocate ~2.5MB on EACH compilation in
a single build action. This has been reduced to ~120KB
allocated/deallocated
* After introducing WorkspaceContext, total memory usage spiked from 6MB
across the whole build action to about 13MB, introducing the symbol
table dropped it back to about 5-6MB.
2016-04-22 15:01:56 -07:00
..
clean Bump CoreFx to rc2-23808 2016-02-09 15:49:45 -08:00
common Enable parallel restore 2016-04-04 09:11:15 -07:00
docker Initial changes to support building on Debian 2016-04-13 13:49:32 -05:00
dotnet-cli-build Memory usage improvements in build (#2626) 2016-04-22 15:01:56 -07:00
Microsoft.DotNet.Cli.Build.Framework Updating CoreFX to rc2-24022 2016-04-22 10:58:43 -05:00
obtain rename install.ps1/sh to dotnet-install.ps1/sh to match documentation 2016-04-08 10:51:16 -07:00
package CR feedback 2016-04-05 18:03:06 -07:00
publish Debian package and publish changes 2016-03-08 23:33:18 +00:00
update-dependencies Updating CoreFX to rc2-24022 2016-04-22 10:58:43 -05:00
dev-dotnet.ps1 Update dotnet-build to produce portable layout 2016-03-08 11:46:15 -08:00
dev-dotnet.sh Eliminate dead code and most relative paths 2015-12-29 02:34:10 -08:00
dockerbuild.sh working on build scripts 2016-02-12 15:26:35 -08:00
dockerrun.sh Initial changes to support building on Debian 2016-04-13 13:49:32 -05:00
global.json working on build scripts 2016-02-12 15:26:35 -08:00
run-build.ps1 rename install.ps1/sh to dotnet-install.ps1/sh to match documentation 2016-04-08 10:51:16 -07:00
run-build.sh rename install.ps1/sh to dotnet-install.ps1/sh to match documentation 2016-04-08 10:51:16 -07:00
unuse-dev.ps1 Clean up build scripts 2015-12-29 01:59:02 -08:00
update-dependencies.ps1 rename install.ps1/sh to dotnet-install.ps1/sh to match documentation 2016-04-08 10:51:16 -07:00
use-dev.ps1 Make dotnet cli portable 2016-03-28 19:16:02 -07:00