> On 5 Jul 2017, at 16:05, Tim Mackinnon <tim@testit.works> wrote:
> 
> I went to try this to see how it might perform on AWS Lambda but I’m guessing 
> there isn’t a minimal 64 bit image right? 
> 
> Sven - was this a 32bit image from get.pharo.org/70-minimal?

It came from a link Pavel sent me for debugging purposes, he is the expert, I 
don't know if there are both 32 and 64 bit versions (or even if there is much 
difference, if any).

> Tim
> 
>> On 30 Jun 2017, at 14:43, Sven Van Caekenberghe <s...@stfx.eu> wrote:
>> 
>>> 
>>> On 27 Jun 2017, at 21:15, Sven Van Caekenberghe <s...@stfx.eu> wrote:
>>> 
>>> 
>>>> On 27 Jun 2017, at 21:00, Esteban A. Maringolo <emaring...@gmail.com> 
>>>> wrote:
>>>> 
>>>> Interesting experiment.
>>>> 
>>>> It would be good to know how fast does the image boot and start
>>>> execution in the context of a service billed at the sub second scale.
>>> 
>>> Sadly I have the impression we lost some speed:
>>> 
>>> ~/pharo64$ ./pharo Pharo.image printVersion
>>> [version] 6.0 #60499
>>> 
>>> ~/pharo64$ time ./pharo Pharo.image eval '42 factorial'
>>> 1405006117752879898543142606244511569936384000000000
>>> 
>>> real        0m1.276s
>>> user        0m0.985s
>>> sys 0m0.171s
>>> 
>>> while before
>>> 
>>> ~/pharo/build$ ../bin/pharo Pharo.image printVersion
>>> [version] 4.0 #40620
>>> 
>>> $ time ../bin/pharo Pharo.image eval '42 factorial'
>>> 1405006117752879898543142606244511569936384000000000
>>> 
>>> real        0m0.526s
>>> user        0m0.434s
>>> sys 0m0.045s
>>> 
>>> But it is really hard to find the cause.
>> 
>> The good news is that the Pharo 7 minimal core is way faster
>> 
>> $ time ./pharo ~/Downloads/Pharo7.0-core-32bit-b649ac6.image eval "42 
>> factorial"
>> 1405006117752879898543142606244511569936384000000000
>> 
>> real 0m0.262s
>> user 0m0.132s
>> sys  0m0.062s
>> 
>> Which is good of course ! 
>> 
>>> That being said, these lambda servers can only work well if they keep 
>>> instances alive for longer when there is enough traffic.
>>> 
>>>> Esteban A. Maringolo
>>>> 
>>>> 
>>>> 2017-06-27 13:05 GMT-03:00 Tim Mackinnon <tim@testit.works>:
>>>>> Hi - I am trying to run a pharo image in lambda (as an experiment) - 
>>>>> however
>>>>> I get an error from Pharo about not being able to write to the changes 
>>>>> file?
>>>>> 
>>>>> As I am just evaluating some code - I’m not really coding, so don’t need a
>>>>> changes file - is there a command line option to not require it?
>>>>> 
>>>>> Also, am I running pharo the most efficient way - I’m using eval on the
>>>>> command line and referencing a class with a class method - but is this the
>>>>> best way?
>>>>> 
>>>>> Thanks,
>>>>> 
>>>>> Tim
>>>>> 
>>>>> "errorMessage": "Command failed: ./pharo Pharo.image eval \"Lambda
>>>>> processJSON:
>>>>> '{\"key3\":\"value3\",\"key2\":\"value2\",\"key1\":\"value1\"}'\"\n'Pharo
>>>>> cannot write to the changes file named /var/task/Pharo.changes.\n\nPlease
>>>>> check that you have write permission for this file.\n\nYou won''t be able 
>>>>> to
>>>>> save this image correctly until you fix this.'\n\u001b[31mError: Can't 
>>>>> find
>>>>> the requested
>>>>> origin\n\u001b[0mUnixResolver(PlatformResolver)>>cantFindOriginError\n[ 
>>>>> self
>>>>> cantFindOriginError ] in
>>>>> UnixResolver(PlatformResolver)>>directoryFromEnvVariableNamed: in Block: [
>>>>> self cantFindOriginError
>>>>> ]\nUnixResolver(PlatformResolver)>>directoryFromEnvVariableNamed:or:\nUnixResolver(PlatformResolver)>>directoryFromEnvVariableNamed:\nUnixResolver>>home\n[
>>>>> self home / '.config' ] in UnixResolver>>preferences in Block: [ self 
>>>>> home /
>>>>> '.config'
>>>>> ]\nUnixResolver(PlatformResolver)>>directoryFromEnvVariableNamed:or:\nUnixResolver>>preferences\nUnixResolver(FileSystemResolver)>>resolve:\nSystemResolver(FileSystemResolver)>>unknownOrigin:\nSystemResolver(FileSystemResolver)>>resolve:\nInteractiveResolver>>unknownOrigin:\n[
>>>>> self unknownOrigin: origin ] in InteractiveResolver>>resolve: in Block: [
>>>>> self unknownOrigin: origin
>>>>> ]\nIdentityDictionary(Dictionary)>>at:ifAbsent:\nInteractiveResolver>>resolve:\nFileLocator>>resolve\nFileLocator(AbstractFileReference)>>exists\nGlobalIdentifierStonPersistence(GlobalIdentifierPersistence)>>shouldCallPreviousPersistence\nGlobalIdentifierStonPersistence(GlobalIdentifierPersistence)>>ensure:\nGlobalIdentifier>>ensure\nGlobalIdentifier
>>>>> class>>initializeUniqueInstance\nGlobalIdentifier
>>>>> class>>uniqueInstance\nSystemSettingsPersistence
>>>>> class>>resumeSystemSettings\n[ :persistence | persistence
>>>>> resumeSystemSettings ] in PharoCommandLineHandler>>runPreferences in 
>>>>> Block:
>>>>> [ :persistence | persistence resumeSystemSettings
>>>>> ...etc...\nBlockClosure>>cull:\nSystemDictionary(Dictionary)>>at:ifPresent:\nSmalltalkImage>>at:ifPresent:\nPharoCommandLineHandler>>runPreferences\nPharoCommandLineHandler>>activate\nPharoCommandLineHandler
>>>>> class(CommandLineHandler class)>>activateWith:\n\u001b[0m",
>>>>> "errorType": "Error",
>>>>> "stackTrace": [
>>>>>  "'Pharo cannot write to the changes file named
>>>>> /var/task/Pharo.changes.",
>>>>>  "",
>>>>>  "Please check that you have write permission for this file.",
>>>>>  "",
>>>>>  "You won''t be able to save this image correctly until you fix this.'",
>>>>>  "\u001b[31mError: Can't find the requested origin",
>>>>>  "\u001b[0mUnixResolver(PlatformResolver)>>cantFindOriginError",
>>>>>  "[ self cantFindOriginError ] in
>>>>> UnixResolver(PlatformResolver)>>directoryFromEnvVariableNamed: in Block: [
>>>>> self cantFindOriginError ]",
>>>>>  "UnixResolver(PlatformResolver)>>directoryFromEnvVariableNamed:or:",
>>>>>  "UnixResolver(PlatformResolver)>>directoryFromEnvVariableNamed:",
>>>>>  "UnixResolver>>home",
>>>>>  "[ self home / '.config' ] in UnixResolver>>preferences in Block: [ self
>>>>> home / '.config' ]",
>>>>>  "UnixResolver(PlatformResolver)>>directoryFromEnvVariableNamed:or:",
>>>>>  "UnixResolver>>preferences",
>>>>>  "UnixResolver(FileSystemResolver)>>resolve:",
>>>>>  "SystemResolver(FileSystemResolver)>>unknownOrigin:",
>>>>>  "SystemResolver(FileSystemResolver)>>resolve:",
>>>>>  "InteractiveResolver>>unknownOrigin:",
>>>>>  "[ self unknownOrigin: origin ] in InteractiveResolver>>resolve: in
>>>>> Block: [ self unknownOrigin: origin ]",
>>>>>  "IdentityDictionary(Dictionary)>>at:ifAbsent:",
>>>>>  "InteractiveResolver>>resolve:",
>>>>>  "FileLocator>>resolve",
>>>>>  "FileLocator(AbstractFileReference)>>exists",
>>>>> 
>>>>> "GlobalIdentifierStonPersistence(GlobalIdentifierPersistence)>>shouldCallPreviousPersistence",
>>>>>  "GlobalIdentifierStonPersistence(GlobalIdentifierPersistence)>>ensure:",
>>>>>  "GlobalIdentifier>>ensure",
>>>>>  "GlobalIdentifier class>>initializeUniqueInstance",
>>>>>  "GlobalIdentifier class>>uniqueInstance",
>>>>>  "SystemSettingsPersistence class>>resumeSystemSettings",
>>>>>  "[ :persistence | persistence resumeSystemSettings ] in
>>>>> PharoCommandLineHandler>>runPreferences in Block: [ :persistence |
>>>>> persistence resumeSystemSettings ...etc...",
>>>>>  "BlockClosure>>cull:",
>>>>>  "SystemDictionary(Dictionary)>>at:ifPresent:",
>>>>>  "SmalltalkImage>>at:ifPresent:",
>>>>>  "PharoCommandLineHandler>>runPreferences",
>>>>>  "PharoCommandLineHandler>>activate",
>>>>>  "PharoCommandLineHandler class(CommandLineHandler
>>>>> class)>>activateWith:",
>>>>>  "\u001b[0m",
>>>>>  "ChildProcess.exithandler (child_process.js:204:12)",
>>>>>  "emitTwo (events.js:106:13)",
>>>>>  "ChildProcess.emit (events.js:191:7)",
>>>>>  "maybeClose (internal/child_process.js:886:16)",
>>>>>  "Process.ChildProcess._handle.onexit (internal/child_process.js:226:5)"
>>>>> ]
>>>>> }
> 


Reply via email to