So what is the result? Have you found the reason that cause code executing slower?
在 2018年2月23日星期五 UTC+8下午6:59:58,Alexandru Dima写道: > > Hi Yang, > > I have spent quite some time to create a repro that executes the exact > same code in the exact same state, once with the code loaded from cached > data, and once with the code running from a startup snapshot. > > In this standalone repro, the total time is indeed better for starting > from a startup snapshot (column 2), but note that executing the startup > code (blue) is 27% slower when the same code executes with the same state > from a startup snapshot: > > <https://github.com/alexandrudima/v8-repro/raw/master/chart2.png> > > > The repro is at https://github.com/alexandrudima/v8-repro and I would > appreciate if you can please take a look. The README there contains all the > steps needed to set it up. > > Here are some specific answers in blue: > > > > When you say classes run slower, do you mean they take longer to > execute, or do you mean they spend time on compilation too? > I mean the code takes longer to execute, I use Date.now() before and after > executing the code. > > > Does your non-snapshotted version use proxies too? Proxies are indeed > significantly slower. > This makes a lot of sense. I have removed the usage of proxies, such that > both versions have the exact same code. > > > You should no longer need --ignition --turbo. This is the default with > the newest V8. > > What version of V8 are you using? > The one that comes with Electron 1.7.9, v8 version 5.8.283.38 > > > It's not expected that code in the snapshot is slower than code at > runtime. But I expect that there is no code embedded in the snapshot in the > first place. > I'm sorry, I don't understand what you mean. The startup snapshot contains > the source code inside of it (see index2.html in the repro where no code > loading is needed, as the code is part of the startup snapshot). > > > Do you have a small repro I can play with? E.g. source to include in the > snapshot and the code to run. Ideally pure JS that I can run in Node. > See https://github.com/alexandrudima/v8-repro > I'm sorry, the repro is not small and it involves running Electron, as the > source code which reproduces needs electron to execute. I have tried to > load only a subset of the code (some editor text buffer and stress it out > by doing large text operations), but I could not reproduce the same > slowdown in that case. If you can guide me through it, I can try to reduce > the repro, but I don't know what I'm looking for. Everything is slower, > there is not one particular section of code that is slower. > > P.S. If you uncomment the link tag in the html files, this is what the > code is doing: > > <https://github.com/alexandrudima/v8-repro/raw/master/explanation.png> > > > Thank you, > Alex > >> -- -- v8-users mailing list v8-users@googlegroups.com http://groups.google.com/group/v8-users --- You received this message because you are subscribed to the Google Groups "v8-users" group. To unsubscribe from this group and stop receiving emails from it, send an email to v8-users+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.