Hi Simon,

that's an interesting project, please keep us updated :)

1) Does v8 codegen emit 64-bit machine instructions for 64-bit wasm
> instructions on 64-bit architectures (specifically Android)? I imagine the
> speedup from SWAR techniques will be significantly reduced using just
> 32-bit registers, perhaps to the level that doesn't make this worthwhile.
>

Yes, of course we use 64-bit instructions for 64-bit operations (if the
binary was compiled for a 64-bit platform).

2) Does v8's codegen currently do any vectorization? If not, are there
> plans to add it? In this case the plain C version might be best to stick
> with as it would be easier for auto-vectorization to detect and optimize.
>

No, we do not do any auto-vectorization, and I am not aware of any plan to
add this.

3) Can anyone provide tips / links to help with investigating and
> optimizing this kind of thing? Any way of flagging wasm functions for
> maximum optimization for benchmarking purposes?
>

For benchmarking, you should disable the baseline compiler (Liftoff).
Chrome has a feature flag for that (
chrome://flags/#enable-webassembly-baseline), if you experiment with d8
directly, then add "--no-liftoff --no-wasm-tier-up". If you want to inspect
the generated machine code, you can add the "--print-wasm-code" command
line flag. This requires a build with then "v8_enable_disassembler" gn flag
enabled, which is the default for debug builds. Since compilation happens
concurrently, you need to add "--predictable" (or "--single-threaded" or
"--wasm-num-compilation-tasks=0") to get readable output.

Hope that helps,
Clemens

-- 

Clemens Hammacher

Software Engineer

[email protected]


Google Germany GmbH

Erika-Mann-Straße 33

80636 München

Geschäftsführer: Paul Manicle, Halimah DeLaine Prado

Registergericht und -nummer: Hamburg, HRB 86891

Sitz der Gesellschaft: Hamburg

Diese E-Mail ist vertraulich. Falls sie diese fälschlicherweise erhalten
haben sollten, leiten Sie diese bitte nicht an jemand anderes weiter,
löschen Sie alle Kopien und Anhänge davon und lassen Sie mich bitte wissen,
dass die E-Mail an die falsche Person gesendet wurde.



This e-mail is confidential. If you received this communication by mistake,
please don't forward it to anyone else, please erase all copies and
attachments, and please let me know that it has gone to the wrong person.

-- 
-- 
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev
--- 
You received this message because you are subscribed to the Google Groups 
"v8-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/v8-dev/CAGO%3DqhCCCzJKpWgD1RxAoQGQ25Z%3Diuyf54AR1pooox8b3yFpoA%40mail.gmail.com.

Reply via email to