Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Replace endian specific copy functions with DataView #14

Closed
wants to merge 1 commit into from

Conversation

richardlau
Copy link
Member

Refs: #13 (comment)

@guybedford This is the tidied up version of the hack I did to get the tests passing on AIX (big endian). I'm okay with #13 so am not fussed if this lands or is just closed out, but I've opened it anyway as an FYI.

FWIW the original hack kept the copyBE and copyLE functions and only used DataView for copyBE. It was hacky because it took me a while to realise that the source length was in characters and DataView's length/offsets were in bytes.

@richardlau
Copy link
Member Author

I also noticed there's a .travis.yml file here -- Travis does have a big endian CPU (s390x) in its beta multiple CPU architecture support: https://docs.travis-ci.com/user/multi-cpu-architectures/

@guybedford
Copy link
Collaborator

Thanks @richardlau. I just cloned this and compared it to the performance of the version on master.

I'm getting ~30ms for the Warm runs test on this PR, versus ~28ms for the Warm runs test on average on master.

For this perf reason I think we should stick with what is on master though, at least until DataView is more optimized in Node.js.

@guybedford
Copy link
Collaborator

Closing as the other approach is now working well. Thanks again for the help on this one @richardlau.

@guybedford guybedford closed this Oct 29, 2020
@richardlau richardlau deleted the bigendian branch October 29, 2020 17:17
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants