Sharing of line in wasm of server, realizing AI as a service webassembly weekly report 0923 with rust and wasm

Time:2021-1-25

Webassembly weekly

Please come to the end of the article

Editor’s note: webassembly continues to grow vigorously with more language support, more tools and more application cases.

WebAssembly Today

Use Node.js AI as a service with high performance and security 👩

Sharing of line in wasm of server, realizing AI as a service webassembly weekly report 0923 with rust and wasm

For 12 million JavaScript developers, AI as a service means Node.js Run tensorflow model in. One way to do this is to use Node.js Run rust and webassembly to replace Python native modules. This article will teach you how to use rust, webassembly and tensorflow to implement face detection as a web service.

Emscripten 2.0.4 release, support bazel 👏

Emscripten 2.0.4 was released this week. New performance:

  • Is the first version to support bazel.
  • Default inclusion stoppedmallocandfree. If you need to access them from JS, you must use the-s EXPORTED_FUNCTIONS=['_malloc', ..]Export manually.
  • Stop at-O1 Run binaryen optimization in. This makes-O1 Builds are slightly larger, but they compile faster, which is in the case of “compromised” builds (in the-O0And a higher optimization level suitable for release build).
  • add toERROR_ON_WASM_CHANGES_AFTER_LINKOption, if we need towasm-emscripten-finalizeperhapswasm-optAdd error if you want to perform any work in on wasm changes after _ Link option. This verifies that the link is the fastest, and does not do a dwarf rewrite.

Blazor is faster (even without AOT) 👍

Sharing of line in wasm of server, realizing AI as a service webassembly weekly report 0923 with rust and wasm

Blazor recently released a new release candidate (RC) for. Net 5. According to the performance benchmark,. Net 5’s blazor webassembly is 2-3 times faster than before. The performance improvement lies in the core framework library and the optimization of. Net IL interpreter. It is worth mentioning that blazor achieves such performance without AOT optimization.

Python WebAssembly Playground 🐍

Use Python playground to run Python code in a browser. Your Python code will be compiled into a webassembly and run in the browser. The online ide also supports JavaScript and go.

Browser based ffmpeg video transcoder enabled by webassembly 🌎

Sharing of line in wasm of server, realizing AI as a service webassembly weekly report 0923 with rust and wasm
Remember the video transcoder project we wrote in the past? The project was recently renamed modfy.video . It has also reached a stable version. Its new features and improvements include the following.

  • Dramatically reduce data usage (up to 25 MB)
  • Support any format of video
  • Complete modular design with clui
  • Add document and API reference

Decaton adds experimental webassembly support from the line team 📱

The line team recently shared their experience with webassembly on the server side. The idea is to support decaton processors written by users in any language. Webassembly supports multiple languages and enables user code to run safely.

articlePart oneThis paper introduces how to integrate webassembly runtime into Java application.Part twoThis paper discusses how to extend Wasi API and rust standard library to support socket.

“In terms of webassembly’s application outside the browser, I think it has a bright future,” the author says

When we talk about webassembly, what are we talking about? 🤩

Developer Peter salomonsen explains why he wants webassembly to focus on being a computing engine rather than providing access to the whole system (such as UI) — the value orientation of webassembly is security first. Using webassembly on the server side, he put forward a good idea: webassembly allows code reuse between browser and server.

Porting a C + + game engine to web with emscripten 🤫

Alex Dixon discussed how he ported a game engine to a web server to run webgl games in a browser.

Low-Level Academy👩‍🎓‍

The low level academy will teach system programming courses for rust and webassembly. It starts with network programming. In the first lesson, you will learn how to use UDP and TCP Internet protocols.

Web assembly everything 👀

Google’s Martina Kraus shared a talk at the webassembly live conference on how to optimize the size and startup time of the webassembly bytecode.

WebAssembly in Action ✍️

Webassembly in action is now available for free.Click read,Learn what a webassembly is and how it works.

Rust news

Rust 2021: lowering the threshold 👂

In order to make rust grow and increase the use of rust in mainstream developers, we must lower the threshold of learning and using rust. This paper puts forward some suggestions.

  1. Good installation experience – can it be improved?
  2. The documentation is OK – can it be better? Easier to find? Excellent, for exampleRust cookbookIs it well known? Can it be updatedLatest suggestions on error handling? Translate into more languages?
  3. Tutorials and learning materials are good – can they be better? Are there more video tutorials or tutorials for a specific field, such as embedded programming(embedded programming) ?
  4. Compiler error is OK – can it be better, as recentlyPRThat’s what it looks like?
  5. 5. Compile time(Compile times)AndIDEExperience has improved – can it continue to improve? Can we get a quick debug backend(fast debug backend)To further improve productivity?

Why not choose rust 🦀

The war between go and rust is heating up. The good news is that webassembly supports all of them! Children make choices!

Dropbox open source protobuf CodeGen 🚀

Dropbox open sourcepb-jelly, a protobuf code generation framework developed for rust. At present, several modules of Dropbox are using this software, including sync engine and magic pocket.

Bevy 0.2 release 🌅

Bevy 0.2 was released. We’ve talked about this simple data-driven game engine before.

New features:

  • Asynchronous task system. CPU usage is very high.
  • Use webassembly to support the initial web platform.
  • Parallel query
  • Rewriting transformation system
  • Support game controller / game keyboard
  • Improve the performance of bevy ECS

Rust and changing requirements in Science 🦀

Compare rust and python from changing requirements, including readability, testability, feedback, and toolchain.

Serverless

Serverless: I’m not a baby anymore 🦄

This article is rich in content, from which we will have a comprehensive understanding of no server

  • The concept of no server,
  • How to classify no server,
  • Advantages of no server over virtual machine,
  • The difference between serverless container and serverless function,
  • How to extend serverless functions.

Sharing of line in wasm of server, realizing AI as a service webassembly weekly report 0923 with rust and wasm

Recommended Today

New JavaScript syntax “double question mark syntax” and “optional chain syntax”

Double question mark grammar Double question mark grammarThe concept is to return the value on the right when the value on the left is null or undefined let Form = undefined ?? true; //Form = true Alternative chain syntax ? optional chain //Optional chain let body = { value: { a: ‘123321’ } } let […]