8 comments

[ 2.9 ms ] story [ 20.9 ms ] thread
That should also mean doubled CPU performance which might be important for some workloads as well!

Edit: From the docs:

> Functions larger than 1536MB are allocated multiple CPU threads, and multi-threaded or multi-process code is needed to take advantage of the additional performance.

http://docs.aws.amazon.com/lambda/latest/dg/resource-model.h...

Yup! You get 2 CPU cores instead of just one! (disclaimer, AWS Serverless Developer Advocate)
(comment deleted)
So does this mean that if I pick a Lambda with 1600MB I get twice as much CPU than a 1536MB one?
Oh man this is great. I do a lot of Lambda functions where I parse out large data sets to be turned into MySQL data. I would open large csv files from S3 into memory by doing S3 get_objwct streams. I was hitting some memory caps. So this is very helpful
I really wish you could tweak the max. memory and max. cpu separately. I have a lot of tasks that need <100MB of memory but are highly cpu-bound so they're running on 512MB lambdas instead of 128MB ones.
I wish you could get longer runtimes too. 5 minutes is a bit arbitrary.
Yeah, or at least indicate intervals where your function is waiting on other async processes to complete - but I can see how that could easily be gamed and there do exist architectural patterns for this — as well as things like AWS StepFunctions