ML Service: Fully stubbed out Mojo service implementation |
|||
Issue descriptionImplement a stubbed-out version of the full ML Service Mojo interface. I.e. stub ModelProvider, can supply client with stub models, which can supply stub graph-evaluators, etc.
,
Jun 21 2018
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/overlays/chromiumos-overlay/+/39ef70c1e9d95a4b4d8f25c21df8baa41fe562a7 commit 39ef70c1e9d95a4b4d8f25c21df8baa41fe562a7 Author: Andrew Moylan <amoylan@chromium.org> Date: Thu Jun 21 11:45:49 2018 chromeos-base/ml: Add dependencies Add missing dependencies. Without these deps, build_packages sometimes needs to retry builds of this package. The libmojo is not strictly needed today but is about to be needed when the real implementation of this Mojo daemon is added. Tested with: cros_workon --board=amd64-generic start ml && \ ./setup_board --board=amd64-generic --force && \ ./build_packages --board=amd64-generic ml BUG= chromium:836093 TEST=As above Change-Id: I05854ef86eab096c5ab6427c4b230705264ef05a Reviewed-on: https://chromium-review.googlesource.com/1101612 Commit-Ready: Andrew Moylan <amoylan@chromium.org> Tested-by: Andrew Moylan <amoylan@chromium.org> Reviewed-by: Ben Chan <benchan@chromium.org> [modify] https://crrev.com/39ef70c1e9d95a4b4d8f25c21df8baa41fe562a7/chromeos-base/ml/ml-9999.ebuild
,
Jul 16
,
Jul 16
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/platform2/+/ff6be511d7be61934523db3537f0a919abd31c40 commit ff6be511d7be61934523db3537f0a919abd31c40 Author: Andrew Moylan <amoylan@chromium.org> Date: Mon Jul 16 08:18:07 2018 ml: Add D-Bus->Mojo bootstrap with stub Mojo impl This CL gives a proper implementation of the BootstrapMojoConnection D-Bus method offered by the ML service daemon. The caller of that method (Chromium) passes a file descriptor representing a Unix socket. With this CL, the daemon reads a Mojo invitation from the socket in order to connect the daemon's Mojo to Chromium's Mojo process graph. It also extracts a primodial pipe included by Chromium in the invitation and binds a (placeholder stub) implementation of the new top-level Mojo interface MachineLearningService. The Chromium side of the above interaction is included in crrev.com/c/1123964. This CL also brings the .mojom files specifying the ML service Mojo interface under platform2/ml. Previously these were under platform/system_api/mojo, with the intent to share them with Chromium, but Chromium will instead maintain its own eventually-consistent copy of the mojoms. We are switching to this recommended approach for the reasons discussed in the following doc: https://docs.google.com/document/d/1rX3xtR6ZioKZaO-4qBFJFqFypSX1p6gAvQ_MuYn64G8 A separate CL will remove the .mojoms under platform/system_api/mojo. Testing: How to automatically test that Chromium + the daemon successfully perform the D-Bus -> Mojo bootstrap is not clear and is under discussion (comments welcome). It may have to wait until there is a client in Chromium calling the daemon, which could then have an end-to-end autotest. I manually tested this against a Chromium built with crrev.com/c/1123964 and that also included some test calls to BootstrapMojoConnection initiated from chrome_browser_main_chromeos. Scenarios tested: - Boot (OK for either service to be ready first) - Sudden restart of UI (daemon should quit itself) - Sudden restart of daemon (UI should reconnect) BUG= chromium:836092 , chromium:836093 TEST=Manual test per above. How to set up an automated integration test for the bootstrap is TBD (future CL). Change-Id: Ied6309d9a51656dda1af01114b0f05fdb90bfd88 Reviewed-on: https://chromium-review.googlesource.com/1123663 Commit-Ready: Andrew Moylan <amoylan@chromium.org> Tested-by: Andrew Moylan <amoylan@chromium.org> Reviewed-by: Ben Chan <benchan@chromium.org> [add] https://crrev.com/ff6be511d7be61934523db3537f0a919abd31c40/ml/mojom/machine_learning_service.mojom [add] https://crrev.com/ff6be511d7be61934523db3537f0a919abd31c40/ml/mojom/model.mojom [add] https://crrev.com/ff6be511d7be61934523db3537f0a919abd31c40/ml/machine_learning_service_impl.cc [add] https://crrev.com/ff6be511d7be61934523db3537f0a919abd31c40/ml/machine_learning_service_impl.h [add] https://crrev.com/ff6be511d7be61934523db3537f0a919abd31c40/ml/mojom_generator.gypi [modify] https://crrev.com/ff6be511d7be61934523db3537f0a919abd31c40/ml/daemon.h [modify] https://crrev.com/ff6be511d7be61934523db3537f0a919abd31c40/ml/main.cc [modify] https://crrev.com/ff6be511d7be61934523db3537f0a919abd31c40/ml/daemon.cc [add] https://crrev.com/ff6be511d7be61934523db3537f0a919abd31c40/ml/mojom/tensor.mojom [modify] https://crrev.com/ff6be511d7be61934523db3537f0a919abd31c40/ml/ml.gyp [add] https://crrev.com/ff6be511d7be61934523db3537f0a919abd31c40/ml/mojom/graph_executor.mojom
,
Sep 28
Triage nag: This Chrome OS bug has an owner but no component. Please add a component so that this can be tracked by the relevant team.
,
Oct 5
|
|||
►
Sign in to add a comment |
|||
Comment 1 by amoylan@chromium.org
, Apr 24 2018