Home > Mobile >  How can I determine if my lambda function has been "prejitted" during compilation?
How can I determine if my lambda function has been "prejitted" during compilation?

Time:11-15

I have a .NET Core 3.1 project with a .csproj file of:

<Project Sdk="Microsoft.NET.Sdk">

  <PropertyGroup>
    <TargetFramework>netcoreapp3.1</TargetFramework>
    <GenerateRuntimeConfigurationFiles>true</GenerateRuntimeConfigurationFiles>
    <AWSProjectType>Lambda</AWSProjectType>
    <CopyLocalLockFileAssemblies>true</CopyLocalLockFileAssemblies>
    <PublishReadyToRun>true</PublishReadyToRun>
  </PropertyGroup>

</Project>

I am using AWS CodeBuild to compile and deploy the project on a Ubuntu image (aws/codebuild/standard:5.0).

Since I am building on Ubuntu and have true, I am assuming that my code is being deployed "prejitted" to avoid a cold startup. How can I definitively confirm that it is working as expected? Is there something in the build logs I could check for example? Or is there some indicator on the Lambda function that I can find?

CodePudding user response:

I am not sure of the actual R2R format, I believe the format may not be so clear cut and contain both the MSIL header and AOT code.

However, you could check the compilation size, the R2R AOT format should be considerably larger due to the nature of prejitting.


Additional resources

ReadyToRun Compilation

  • Related