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

Upgrade Emscripten and add correctness test to benchmarks UI. #3342

Merged
merged 41 commits into from
Jun 1, 2020

Conversation

annxingyuan
Copy link
Collaborator

@annxingyuan annxingyuan commented May 28, 2020

Changes

To see the logs from the Cloud Build CI, please join either our discussion or announcement mailing list.


This change is Reviewable

@annxingyuan annxingyuan requested review from dsmilkov, lina128 and nsthorat and removed request for lina128 May 28, 2020 13:13
@annxingyuan annxingyuan self-assigned this May 28, 2020
@annxingyuan annxingyuan marked this pull request as draft May 28, 2020 16:52
@annxingyuan annxingyuan marked this pull request as ready for review May 29, 2020 19:24
@annxingyuan annxingyuan requested a review from tafsiri June 1, 2020 15:00
@annxingyuan annxingyuan requested a review from lina128 June 1, 2020 15:32
Copy link
Contributor

@dsmilkov dsmilkov left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Few non-blocking qs. LGTM! Thanks Ann

Reviewed 8 of 8 files at r1.
Reviewable status: :shipit: complete! 1 of 1 approvals obtained (waiting on @annxingyuan, @dsmilkov, @lina128, @nsthorat, @pyu10055, and @tafsiri)


tfjs-backend-wasm/cloudbuild.yml, line 58 at r1 (raw file):

  waitFor: ['build']

# Check bundle size.

add a TODO(issue_link): Reenable this when ....


tfjs-backend-wasm/scripts/build-ci.sh, line 35 at r1 (raw file):

done

./emsdk activate --no-embedded 1.39.13

for my own understanding, is this flag required for 1.39.13 works? Does it error without that flag?


tfjs-backend-wasm/src/index_test.ts, line 121 at r1 (raw file):

         return new Promise((resolve, reject) => {
           reject(new Error());

curious, what changed here? why using a real fetch to an invalid path doesn't work anymore?


tfjs-core/benchmarks/index.html, line 187 at r1 (raw file):

    async function loadModelAndRecordTime() {
      const start = performance.now();

this start will now measure UI work and 5ms await. Should start go after showMsg()?


tfjs-core/benchmarks/util.js, line 30 at r1 (raw file):

const epsilon = 1e-3;
function arraysClose(n1, n2) {

tf.test_util.expectArraysClose ?

Copy link
Collaborator

@pyu10055 pyu10055 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Reviewed 7 of 8 files at r1, 1 of 1 files at r2.
Reviewable status: :shipit: complete! 2 of 1 approvals obtained (waiting on @annxingyuan, @lina128, @nsthorat, @pyu10055, and @tafsiri)

Copy link
Collaborator

@pyu10055 pyu10055 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Reviewable status: :shipit: complete! 1 of 1 approvals obtained (waiting on @annxingyuan, @lina128, @nsthorat, and @tafsiri)


tfjs-backend-wasm/src/index_test.ts, line 113 at r2 (raw file):

  // Disabling this test because it intermittently times out on CI.
  // it('backend init fails when the path is invalid and use platform fetch',

you can use xit to skip test, instead of comment out everything.

Copy link
Collaborator Author

@annxingyuan annxingyuan left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Reviewable status: :shipit: complete! 1 of 1 approvals obtained (waiting on @dsmilkov, @lina128, @nsthorat, @pyu10055, and @tafsiri)


tfjs-backend-wasm/cloudbuild.yml, line 58 at r1 (raw file):

Previously, dsmilkov (Daniel Smilkov) wrote…

add a TODO(issue_link): Reenable this when ....

Done


tfjs-backend-wasm/scripts/build-ci.sh, line 35 at r1 (raw file):

Previously, dsmilkov (Daniel Smilkov) wrote…

for my own understanding, is this flag required for 1.39.13 works? Does it error without that flag?

Strangely, this error started showing up on master (1.39.1). Without this flag emscripten writes configuration to the Emscripten SDK directory instead of user home. embedded seems to be the default (https://github.com/emscripten-core/emsdk/blob/858b176f68ddd040e505f7ce6af637e99cdb9d42/emsdk.py#L2769) so we pass --no-embedded.


tfjs-backend-wasm/src/index_test.ts, line 121 at r1 (raw file):

Previously, dsmilkov (Daniel Smilkov) wrote…

curious, what changed here? why using a real fetch to an invalid path doesn't work anymore?

Actually I think the root issue is that real fetch with invalid path is flaky and intermittently times out. I removed my 'fix' and am using xit instead.


tfjs-backend-wasm/src/index_test.ts, line 113 at r2 (raw file):

Previously, pyu10055 (Ping Yu) wrote…

you can use xit to skip test, instead of comment out everything.

Done


tfjs-core/benchmarks/index.html, line 187 at r1 (raw file):

Previously, dsmilkov (Daniel Smilkov) wrote…

this start will now measure UI work and 5ms await. Should start go after showMsg()?

Done


tfjs-core/benchmarks/util.js, line 30 at r1 (raw file):

Previously, dsmilkov (Daniel Smilkov) wrote…

tf.test_util.expectArraysClose ?

Done

@annxingyuan annxingyuan requested a review from pyu10055 June 1, 2020 17:31
Copy link
Collaborator

@pyu10055 pyu10055 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Reviewed 4 of 4 files at r3.
Reviewable status: :shipit: complete! 2 of 1 approvals obtained (waiting on @dsmilkov, @lina128, @nsthorat, @pyu10055, and @tafsiri)

@annxingyuan annxingyuan merged commit 5d81788 into master Jun 1, 2020
@annxingyuan annxingyuan deleted the upgrade_emscripten branch June 1, 2020 17:40
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants