Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(394)

Unified Diff: native_client_sdk/src/examples/demo/life_simd/example.js

Issue 451883002: Update SIMD version of life demo. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 6 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: native_client_sdk/src/examples/demo/life_simd/example.js
diff --git a/native_client_sdk/src/examples/demo/life_simd/example.js b/native_client_sdk/src/examples/demo/life_simd/example.js
new file mode 100644
index 0000000000000000000000000000000000000000..e71b16e059566be48d9527acba4d6b3ca0ac7ae9
--- /dev/null
+++ b/native_client_sdk/src/examples/demo/life_simd/example.js
@@ -0,0 +1,51 @@
+// Copyright (c) 2014 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+function moduleDidLoad() {
+}
+
+
+// Add event listeners after the NaCl module has loaded. These listeners will
+// forward messages to the NaCl module via postMessage()
+function attachListeners() {
+ document.getElementById('benchmark').addEventListener('click',
+ function() {
+ common.naclModule.postMessage({'message' : 'run_benchmark'});
+ common.updateStatus('BENCHMARKING... (please wait)');
+ });
+ document.getElementById('simd').addEventListener('click',
+ function() {
+ simd = document.getElementById('simd');
binji 2014/08/08 00:31:40 var simd
nfullagar 2014/08/08 20:51:48 Done.
+ common.naclModule.postMessage({'message' : 'set_simd',
+ 'value' : simd.checked ? 'enable' : 'disable'});
binji 2014/08/08 00:31:40 probably simpler to just send a bool, rather than
nfullagar 2014/08/08 20:51:47 Done.
+ });
+ document.getElementById('multithread').addEventListener('click',
+ function() {
+ multithread = document.getElementById('multithread');
+ common.naclModule.postMessage({'message' : 'set_threading',
+ 'value' : multithread.checked ? 'enable' : 'disable'});
+ });
+ document.getElementById('large').addEventListener('click',
+ function() {
+ large = document.getElementById('large');
+ nacl = document.getElementById('nacl_module');
+ nacl.setAttribute('width', large.checked ? 1280 : 640);
+ nacl.setAttribute('height', large.checked ? 1024 : 640);
+ });
+}
+
+
+// Handle a message coming from the NaCl module.
+function handleMessage(message_event) {
+ if (message_event.data['message'] == 'benchmark_result') {
binji 2014/08/08 00:31:40 data.message is more conventional
nfullagar 2014/08/08 20:51:47 Done.
+ // benchmark result
+ var result = message_event.data['value'];
binji 2014/08/08 00:31:40 data.value
nfullagar 2014/08/08 20:51:48 Done.
+ console.log('Benchmark result:' + result);
+ result = (Math.round(result * 1000) / 1000).toFixed(3);
+ document.getElementById('result').textContent =
+ 'Result: ' + result + ' seconds';
+ common.updateStatus('SUCCESS');
+ }
+}
+

Powered by Google App Engine
This is Rietveld 408576698