977 karma · joined January 27, 2015
lol the irony
Katawa Shoujo: Re-Engineered offers a battery of accessibility features to accommodate players with disabilities. Using the tools available in modern Ren'Py, we've added quick access to self-voicing, two dyslexic typefaces, a special high contrast text box, and various optimizations to improve functionality with common screenreaders- and that's just the beginning. We're already looking into other ways to make KS:RE even more accessible.
xDrip+ is an unofficial and independent Android app which works as data hub and processor between many different devices.
It supports wireless connections to G4, G5, G6, G7, Medtrum A6, Libre via NFC and Bluetooth, 630G, 640G, 670G pumps, CareSens Air and Eversense CGM via companion apps. Bluetooth Glucose Meters such as the Contour Next One, AccuChek Guide, Verio Flex & Diamond Mini as well as devices like the Pendiq 2.0 Insulin Pen.
Heart-rate and step counter data is processed from Android Wear, Garmin, Fitbit and Pebble smart-watches and watch-faces for those that show glucose values and graphs.
On some Android Wear watches, it is possible for the G5 or G6 to talk directly to the watch so it can display values even when out of range of the phone.
The app contains sophisticated charting, customization and data entry features as well as a predictive simulation model.
The goal of the contest was to synthesize AIGs[1] with the minimal number of two-input and-nodes (AIGs) and two-input xor-and-nodes (XAIGs), for a set of completely-specified multi-output Boolean functions represented using truth tables.
TL;DR: Build the smallest possible circuit that provides a given binary input/output mapping. The solution uses a technique called Circuit Neural Networks and Simulated Annealing.
There are many reasons for this. First, the former will loop iterations on the GPU in a serial fashion. Second, the internal jit makes optimization options opaque to Jax. For example, if there's a loop of matmuls inside main, that loop can be converted to a loop of einsums if you vmap first. It can also be fused into sometimes into a bigger operation that doesn't jump control variables back and forth between CPU and GPU between time steps. Between the two you both increase throughput and decrease latency.
I think in Jax, jit(vmap(jit(...))) will also reoptimize the same way as jit(vmap(...)) but I'm not 100% certain.
https://github.com/utkarsh530/GPUODEBenchmarks/blob/ef807198...
https://github.com/utkarsh530/GPUODEBenchmarks/blob/ef807198...
Good luck cracking that remotely.
It's a labor of love, created by the Nightscout Foundation - a bunch of folks who wanted to make life easier for family members who have Type 1 diabetes.
It's been developed for years. It's open-source. It's free as in beer. It supports interoperability of data or other additional good-for-the-commons aspect. It has medical or other direct impact on QOL of some group of people.