Enabling Chrome Flags
To provide compute, certain browser features need to be enabled.
Last updated
To provide compute, certain browser features need to be enabled.
Last updated
Upon installing our extension, you will be prompted to enable certain browser features. These features are necessary to provide compute to our network.
Javascript Integration (enable-experimental-webassembly-jspi):
The JavaScript Promise Integration (JSPI) API allows a WebAssembly application to more efficiently communicate with lower level system APIs using asynchronous calls rather than synchronous callbacks. This allows for more throughput and lower latency when running inference.
Experimental WebAssembly (enable-experimental-webassembly-features):
WebAssembly pointers are limited to 32-bit integers, restricting heap sizes to 4GB. This flag expands the pointer size to 64-bits, allowing for less computation overhead and loading larger possible model sizes.
Unsafe WebGPU (enable-unsafe-webgpu + temporary-unexpire-flags-m130):
Enables support for bleeding edge WebGPU features and drivers which aren't fully stable. This allows more devices to contribute to inference, and provides broader support for available model types.
While these flags are not strictly required for all browser based AI/ML inference in general, they are required to run the larger models that the distribute.ai network supports. Additionally, these flags allow the distribute.ai Chrome Extension to take full advantage of your hardware.
These flags do not provide an immediate security vulnerability as the distribute.ai extension does not run any unverified code. Additionally, any browser based inference that supports large models and high throughput inference will require similar features due to the underlying implementations.
In future chromium based browsers releases, these flags will not be required as the features that are currently experimental are moved into final releases.
If you're having trouble enabling the Unsafe WebGPU flag, there could be a variety of issues with either Chrome or your system. You can try a few things to resolve the issue:
For Linux users, set the correct command line flags when you launch Chrome:
Due to the experimental nature of WebGPU on Linux, Chrome currently doesn't allow you to permanently enable WebGPU through the flags. You'll need to ensure your drivers support Vulkan, and then launch Chrome with these flags:
--enable-unsafe-webgpu
--enable-features=Vulkan
If Chrome crashes or fails to launch, your distribution or hardware may not be supported.
Ensure you restart Chrome after changing any flags: Chrome requires users to fully restart their browser for changes to be reflected in their flags. If the extension is complaining, try setting the flag and then restarting your browser.
Unexpire M130 Flags:
Recent versions of Chrome have deprecated some flags needed to make WebGPU function properly. You can enable the Temporarily unexpire M130 flags option inchrome://flags/#temporary-unexpire-flags-m130
to work around this until future Chrome updates.
Check if you have Hardware Acceleration enabled in Chrome:
For WebGPU to function properly, Chrome requires that hardware acceleration be available. Check to make sure you enable the option called "Use graphics acceleration when available" or "Use hardware acceleration when available" inside chrome://settings/system
.
Check if your GPU drivers are up-to-date: Since WebGPU is fairly new technology, the newest GPU drivers are required. Make sure your drivers are correct for your GPU, and up-to-date. Check our Chrome GPU Setup Guide to learn more.
If you've tried these and you're still encountering problems, your platform may be unsupported through Chrome at the time being.