I recently revisited an XPRT blog entry that we posted from CES Las
Vegas back in 2020. In that post, I reflected on the show’s expanded AI
emphasis, and I wondered if we were reaching a tipping point where AI-enhanced
and AI-driven tools and applications would become a significant presence in
people’s daily lives. It felt like we were approaching that point back then
with the prevalence of AI-powered features such as image enhancement and text
recommendation, among many others. Now, seamless AI integration with common
online tasks has become so widespread that many people unknowingly benefit from
AI interactions several times a day.
As
AI’s role in areas like everyday browser activity continues to grow—along with
our expectations for what our consumer devices should be able to
handle—reliable AI-oriented benchmarking is more vital than ever. We need
objective performance data that can help us understand how well a new desktop,
laptop, tablet, or phone will handle AI tasks.
WebXPRT 4 already includes timed AI tasks
in two of its workloads: the “Organize Album using AI” workload and
the “Encrypt Notes and OCR Scan” workload. These two workloads
reflect the types of light browser-side inference tasks that are now fairly
common in consumer-oriented web apps and extensions. In today’s post, we’ll
provide some technical information about the Organize Album workload. In a
future post, we’ll do the same for the Encrypt Notes workload.
The
Organize Album workload includes two different timed tasks that reflect a
common scenario of organizing online photo albums. The workload utilizes the AI
inference and JavaScript capabilities of the WebAssembly (Wasm) version of OpenCV.js—an
open-source computer vision and machine learning library. In WebXPRT 4, we used
OpenCV.js version 4.5.2.
Here are the details for each task:
- The first task measures the time it takes to complete a face detection job with a set of five 720 x 480 photos that we sourced from commercial photo sites. The workload loads a Caffe deep learning framework model (res10_300x300_ssd_iter_140000_fp16.caffemodel) using the commands found here.
- The second task measures the time it takes to complete an image classification job (labeling based on object detection) with a different set of five 718 x 480 photos that we sourced from the ImageNet computer vision dataset. The workload loads an ONNX-based SqueezeNet machine learning model (squeezenet.onnx v 1.0) using the commands found here.
To produce a score for each
iteration of the workload, WebXPRT calculates the total time that it takes for
a system to organize both albums. In a standard test, WebXPRT runs seven
iterations of the entire six-workload performance suite before calculating an
overall test score. You can find out more about the WebXPRT results calculation process here.
We
hope this post will give you a better sense of how WebXPRT 4 measures one kind
of AI performance. As a reminder, if you want to dig into the details at a more
granular level, you can access the WebXPRT 4 source code for free. In previous
blog posts, you can find information about how to access and use the code. You can also read
more about WebXPRT’s overall structure and other workloads in the Exploring WebXPRT 4 white paper.
If
you have any questions about this workload or any other aspect of WebXPRT 4,
please let us know!
Justin