P Pulse by EFFOMA
event Built for events at 30,000+ scale

Real-time intelligence for live events, at any scale.

Pulse is EFFOMA's edge AI and live-event platform — telemetry, edge inference, and personalized content delivery engineered for venues with no reliable internet and no second chance to get it right.

LIVE TELEMETRY v2.8
Concurrent attendees served35,000+
Render latency (Cinequest, 2023)2.3s → 380ms
Compute cost vs. full real-time gen−70%
Blind A/B satisfaction score4.7 / 5
Downtime, White Night 2022Zero
35,000+
Visitors served, zero downtime
White Night Festival 2022, Victorian Government
2.3s → 380ms
Rendering latency cut ~6x
Cinequest Film & VR Festival, 2023 — Best Technology Award
−70%
Compute cost vs. full real-time generation
Hybrid pre-generation, Singapore Tourism Board
4.7 / 5
User satisfaction, blind A/B tested
Users couldn't tell pre-generated from live content
Origin story

From a 3-week bespoke build to a reusable platform

Pulse wasn't designed on a whiteboard first. It was extracted from two real events that had to work the first time.

2022

White Night Festival

Victorian Government engagement. Bespoke, one-off system built in 3 weeks for 30,000+ visitors, with edge inference required because the venue had no reliable internet. Load-tested at 500 simulated concurrent users, found a latency spike, and redesigned the queue overnight from synchronous to async batch processing.

Result: 35,000+ visitors served, zero downtime, 2-year contract extension
2022 → 2023

Singapore referral

The White Night result led to a referral from the Singapore Tourism Board, where EFFOMA built a hybrid content-personalization system — pre-computing ~80% of personalized content ahead of time and generating only the most dynamic 20% live.

Result: −70% compute cost, 4.7/5 satisfaction, blind A/B validated
2023

Cinequest Film & VR Festival

Separate engagement, same latency discipline. Profiled and redesigned a rendering pipeline — parallel asset loading, priority queue, shared resource reuse — under 200 simulated concurrent users.

Result: 2.3s → 380ms latency, Best Technology Award
2023 →

Pulse is formalized

Starting in 2023, EFFOMA formalized the lessons from White Night and Singapore into Pulse — a reusable, AWS-native platform. The hybrid pre-generation approach became a template reused across 3 subsequent EFFOMA projects.

Now shipping: v2.8, live telemetry dashboard (Jul 2026)
Architecture

Every choice is a trade-off, made on purpose

Pulse doesn't pick one tool for everything. Each layer is chosen against the specific failure mode a live event can't afford.

router

Edge layer

Where inference actually runs on venue hardware, and how fleets of that hardware get managed.

IoT Greengrass v2 DEFAULT

Fleet management and OTA updates across multiple venues — the right call once Pulse is a repeatable, multi-event platform.

Plain Docker on venue hardware

Simpler for a true one-off event with a single venue and no ongoing fleet to manage.

Outposts

Only justified for a permanent venue installation, not a touring event footprint.

! Greengrass adds operational overhead a single 3-week engagement doesn't need — it earns its cost only once you're managing device fleets across repeat events.
memory

Inference placement

No single inference strategy covers both "must survive a dropped connection" and "can tolerate a couple seconds of latency."

On-device ONNX CRITICAL PATH

Survives dropped connectivity entirely. Capped by whatever compute the venue hardware has, and can't be updated mid-event.

Hybrid pre-generation ECONOMICS

Moves most generative work out of the "must happen live" bucket entirely — the unlock that makes the economics work.

SageMaker real-time endpoints

Elastic, but needs connectivity — a real constraint at venues like White Night's.

Bedrock generative content

Used only where 1-2s latency is tolerable, not on the hard real-time path.

i Hybrid pre-generation isn't a compromise bolted on top — it's the reason Pulse can afford generative content at event scale at all.
stream

Streaming

Two Kinesis services run in parallel, on purpose — they are not interchangeable.

Kinesis Data Streams LIVE OPS

Low-latency, multi-consumer fan-out feeding the live ops dashboard in real time.

Kinesis Firehose ANALYTICS

Zero-ops, delivery-only landing for post-event analytics — no real-time consumption needed here.

! Treating these as substitutes is a common mistake: Data Streams optimizes for low-latency fan-out to multiple live consumers, Firehose optimizes for zero-ops delivery to storage. Running both in parallel from the same source is deliberate, not redundant.
dns

Compute

Default to less operational surface area; escalate only when the workload genuinely demands it.

ECS Fargate DEFAULT

Stateless APIs, less ops overhead — the default posture for most of Pulse's services.

EKS

Reserved for GPU node pools and custom scheduling — used only when that's a genuine requirement, not a default.

trending_up

Capacity posture

A one-night event doesn't get a second chance if scaling lags behind the actual crowd surge.

Pre-provisioned capacity DEFAULT

Sized ahead of the known event-time spike, in place before doors open.

Reactive autoscaling

Deliberately not the default here — scale-up delay during the actual surge is the failure mode Pulse is built to avoid.

! This is the opposite of most web-scale defaults. Event traffic isn't gradual — it's a step function at doors-open, and reactive autoscaling can't react fast enough to matter.
bolt

Hot-path state

Split by durability need, not a single blanket choice.

DynamoDB + DAX DURABLE

Used where state must survive a Lambda restart — durability matters more than shaving off the last few milliseconds.

ElastiCache Redis EPHEMERAL

Used where raw speed matters more than durability and losing the cache on restart is acceptable.

i Neither store wins outright — the split is deliberate: durability-critical state goes to DynamoDB+DAX, everything else that just needs to be fast goes to Redis.
Live ops dashboard

This is real, running telemetry

Live data from a running Kinesis → Lambda → DynamoDB pipeline. It updates every 5 seconds, no refresh needed.

Live Connecting…
error_outline
groups TOTAL VISITORS
speed AVERAGE LATENCY
ms
Zone telemetry schedulePolls every 5s
Zone Visitors Latency Status Last updated
Connecting to live telemetry…
Release history

Changelog

From formalizing White Night's lessons in 2023 to live telemetry in production today.

LATEST v2.8 July 2026

Live telemetry dashboard

  • Live streaming telemetry dashboard for real-time event operations visibility
  • Kinesis Data Firehose added in parallel with Kinesis Data Streams for zero-ops post-event analytics landing
  • Refined zone-level latency and visitor-count reporting for ops teams
v2.4 2025

Pre-provisioned capacity & remote streaming

  • Pre-provisioned capacity scheduler for known event-time spikes, replacing reactive scaling on the hot path
  • MediaLive / IVS integration for remote streaming of live events
v2.0 2024

Hot-path state split & GPU inference

  • DynamoDB + DAX / ElastiCache Redis split for hot-path state, chosen per durability requirement
  • EKS support added for GPU-backed inference workloads
v1.4 Mid 2023

Hybrid pre-generation engine

  • Hybrid pre-generation engine added, based on Singapore Tourism Board learnings
  • User-segment clustering for pre-computing ~80% of personalized content ahead of live events
v1.0 Early 2023

Initial platform formalization

  • IoT Greengrass v2 fleet management for edge devices across venues
  • Kinesis-based ingestion pipeline
  • Formalized directly from White Night Festival 2022 field learnings