-
Flexible Non-intrusive Dynamic Instrumentation for WebAssembly
Authors:
Ben L. Titzer,
Elizabeth Gilbert,
Bradley Wei Jie Teo,
Yash Anand,
Kazuyuki Takayama,
Heather Miller
Abstract:
A key strength of managed runtimes over hardware is the ability to gain detailed insight into the dynamic execution of programs with instrumentation. Analyses such as code coverage, execution frequency, tracing, and debugging, are all made easier in a virtual setting. As a portable, low-level bytecode, WebAssembly offers inexpensive in-process sandboxing with high performance. Yet to date, Wasm en…
▽ More
A key strength of managed runtimes over hardware is the ability to gain detailed insight into the dynamic execution of programs with instrumentation. Analyses such as code coverage, execution frequency, tracing, and debugging, are all made easier in a virtual setting. As a portable, low-level bytecode, WebAssembly offers inexpensive in-process sandboxing with high performance. Yet to date, Wasm engines have not offered much insight into executing programs, supporting at best bytecode-level step** and basic source maps, but no instrumentation capabilities. In this paper, we show the first non-intrusive dynamic instrumentation system for WebAssembly in the open-source Wizard Research Engine. Our innovative design offers a flexible, complete hierarchy of instrumentation primitives that support building high-level, complex analyses in terms of low-level, programmable probes. In contrast to emulation or machine code instrumentation, injecting probes at the bytecode level increases expressiveness and vastly simplifies the implementation by reusing the engine's JIT compiler, interpreter, and deoptimization mechanism rather than building new ones. Wizard supports both dynamic instrumentation insertion and removal while providing consistency guarantees, which is key to composing multiple analyses without interference. We detail a fully-featured implementation in a high-performance multi-tier Wasm engine, show novel optimizations specifically designed to minimize instrumentation overhead, and evaluate performance characteristics under load from various analyses. This design is well-suited for production engine adoption as probes can be implemented to have no impact on production performance when not in use.
△ Less
Submitted 12 March, 2024;
originally announced March 2024.
-
Deep Adaptive Wavelet Network
Authors:
Maria Ximena Bastidas Rodriguez,
Adrien Gruson,
Luisa F. Polania,
Shin Fujieda,
Flavio Prieto Ortiz,
Kohei Takayama,
Toshiya Hachisuka
Abstract:
Even though convolutional neural networks have become the method of choice in many fields of computer vision, they still lack interpretability and are usually designed manually in a cumbersome trial-and-error process. This paper aims at overcoming those limitations by proposing a deep neural network, which is designed in a systematic fashion and is interpretable, by integrating multiresolution ana…
▽ More
Even though convolutional neural networks have become the method of choice in many fields of computer vision, they still lack interpretability and are usually designed manually in a cumbersome trial-and-error process. This paper aims at overcoming those limitations by proposing a deep neural network, which is designed in a systematic fashion and is interpretable, by integrating multiresolution analysis at the core of the deep neural network design. By using the lifting scheme, it is possible to generate a wavelet representation and design a network capable of learning wavelet coefficients in an end-to-end form. Compared to state-of-the-art architectures, the proposed model requires less hyper-parameter tuning and achieves competitive accuracy in image classification tasks
△ Less
Submitted 10 December, 2019;
originally announced December 2019.
-
Wavelet Convolutional Neural Networks
Authors:
Shin Fujieda,
Kohei Takayama,
Toshiya Hachisuka
Abstract:
Spatial and spectral approaches are two major approaches for image processing tasks such as image classification and object recognition. Among many such algorithms, convolutional neural networks (CNNs) have recently achieved significant performance improvement in many challenging tasks. Since CNNs process images directly in the spatial domain, they are essentially spatial approaches. Given that sp…
▽ More
Spatial and spectral approaches are two major approaches for image processing tasks such as image classification and object recognition. Among many such algorithms, convolutional neural networks (CNNs) have recently achieved significant performance improvement in many challenging tasks. Since CNNs process images directly in the spatial domain, they are essentially spatial approaches. Given that spatial and spectral approaches are known to have different characteristics, it will be interesting to incorporate a spectral approach into CNNs. We propose a novel CNN architecture, wavelet CNNs, which combines a multiresolution analysis and CNNs into one model. Our insight is that a CNN can be viewed as a limited form of a multiresolution analysis. Based on this insight, we supplement missing parts of the multiresolution analysis via wavelet transform and integrate them as additional components in the entire architecture. Wavelet CNNs allow us to utilize spectral information which is mostly lost in conventional CNNs but useful in most image processing tasks. We evaluate the practical performance of wavelet CNNs on texture classification and image annotation. The experiments show that wavelet CNNs can achieve better accuracy in both tasks than existing models while having significantly fewer parameters than conventional CNNs.
△ Less
Submitted 20 May, 2018;
originally announced May 2018.
-
Wavelet Convolutional Neural Networks for Texture Classification
Authors:
Shin Fujieda,
Kohei Takayama,
Toshiya Hachisuka
Abstract:
Texture classification is an important and challenging problem in many image processing applications. While convolutional neural networks (CNNs) achieved significant successes for image classification, texture classification remains a difficult problem since textures usually do not contain enough information regarding the shape of object. In image processing, texture classification has been tradit…
▽ More
Texture classification is an important and challenging problem in many image processing applications. While convolutional neural networks (CNNs) achieved significant successes for image classification, texture classification remains a difficult problem since textures usually do not contain enough information regarding the shape of object. In image processing, texture classification has been traditionally studied well with spectral analyses which exploit repeated structures in many textures. Since CNNs process images as-is in the spatial domain whereas spectral analyses process images in the frequency domain, these models have different characteristics in terms of performance. We propose a novel CNN architecture, wavelet CNNs, which integrates a spectral analysis into CNNs. Our insight is that the pooling layer and the convolution layer can be viewed as a limited form of a spectral analysis. Based on this insight, we generalize both layers to perform a spectral analysis with wavelet transform. Wavelet CNNs allow us to utilize spectral information which is lost in conventional CNNs but useful in texture classification. The experiments demonstrate that our model achieves better accuracy in texture classification than existing models. We also show that our model has significantly fewer parameters than CNNs, making our model easier to train with less memory.
△ Less
Submitted 23 July, 2017;
originally announced July 2017.
-
Consistently Orienting Facets in Polygon Meshes by Minimizing the Dirichlet Energy of Generalized Winding Numbers
Authors:
Kenshi Takayama,
Alec Jacobson,
Ladislav Kavan,
Olga Sorkine-Hornung
Abstract:
Jacobson et al. [JKSH13] hypothesized that the local coherency of the generalized winding number function could be used to correctly determine consistent facet orientations in polygon meshes. We report on an approach to consistently orienting facets in polygon meshes by minimizing the Dirichlet energy of generalized winding numbers. While the energy can be concisely formulated and efficiently comp…
▽ More
Jacobson et al. [JKSH13] hypothesized that the local coherency of the generalized winding number function could be used to correctly determine consistent facet orientations in polygon meshes. We report on an approach to consistently orienting facets in polygon meshes by minimizing the Dirichlet energy of generalized winding numbers. While the energy can be concisely formulated and efficiently computed, we found that this approach is fundamentally flawed and is unfortunately not applicable for most handmade meshes shared on popular mesh repositories such as Google 3D Warehouse.
△ Less
Submitted 23 June, 2014; v1 submitted 20 June, 2014;
originally announced June 2014.