Overview and summary
The Division Encrypted Cache Mark 1 vs Mark 2 centers on how the game stores and accesses encrypted data on disk. Mark 1 used a simpler, single large cache file with coarse locking and fixed block sizes, while Mark 2 introduces a segmented, extensible cache architecture with finer-grained concurrency controls, smarter indexing, and adaptive I/O patterns. These changes aim to reduce load times, lower input/output contention on busy servers, and improve stability under sustained throughput. This evergreen explainer covers the technical differences, operational impact, and practical implications for developers, server operators, and performance tuning.
What is the encrypted cache
The encrypted cache is a region of on-disk storage that holds processed, encrypted game assets, sessions, and transactional data. Rather than recomputing or streaming raw assets on every request, the engine writes transformed data to the cache for reuse. Goals include faster subsequent access, reduced CPU usage, and consistent behavior across client and server runs. The cache must remain encrypted at rest yet efficiently readable and patchable across game updates. Its structure directly affects load performance, latency, and storage utilization in both the client and backend services.
Mark 1 architecture and its limits
Design and behavior
Mark 1 used a largely monolithic cache file with a fixed block layout. Concurrency relied on coarse locks, which could become a bottleneck when many threads or services accessed the cache simultaneously. Indexing was table-driven but limited in granularity, making small, frequent updates less efficient. I/O patterns were generally linear and less adaptive to workload changes, leading to variable read times under contention.
Operational impact
- Longer lock hold times under heavy parallel access, increasing latency spikes.
- Larger single-file footprint that could complicate backup and patching workflows.
- Rigid block sizes that did not always align with modern filesystem or storage hardware characteristics.
Mark 2 architecture and key changes
Structural improvements
Mark 2 replaces the monolithic design with a segmented, extensible cache architecture. The cache is divided into logically isolated regions and smaller subfiles, enabling finer-grained locking and reducing contention. Indexing is more granular and supports faster lookups, while I/O scheduling adapts to recent access patterns. The layout is version-aware, making it easier to apply patches and evolve the format without full rewrites.
Performance and reliability gains
- Improved concurrency through fine-grained locks and lock-free read paths where applicable.
- Reduced fragmentation and more efficient use of underlying storage.
- Better alignment with modern storage backends, including SSD and network file systems.
- More predictable performance under sustained load, important for backend services.
Measured differences: performance and footprint
In practice, Mark 2 typically shows lower average and tail latencies for cache reads and writes, particularly under concurrent workloads. Storage footprint can be more compact due to improved block packing and cleaner reclamation. On servers with many cores and high request rates, the gains in throughput and stability are more pronounced. The following table summarizes representative, vendor-reported directions rather than absolute numbers:
| Attribute | Mark 1 | Mark 2 | Source Type |
|---|---|---|---|
| Typical read latency (median) | Comparatively higher under contention | Lower and more consistent | Internal benchmarks |
| Cache update concurrency | Coarse locking; more contention | Fine-grained locking; reduced contention | Engineering analysis |
| Effective storage footprint | Larger single-file baseline | Better packing and cleanup | Platform measurements |
| Patch and rollover friendliness | Monolithic file complicates updates | Versioned segments simplify transitions | Deployment reviews |
Operational implications for servers and clients
For server operators, Mark 2 can reduce I/O wait times and smooth throughput under heavy session loads. Smaller, more independent cache regions make rolling updates and rollbacks less disruptive. Clients benefit from more consistent load times, especially on systems with slower storage or constrained CPUs. Migration to Mark 2 often involves cache format conversion and validation steps, which should be performed during planned maintenance windows and with appropriate backups.
Versioning, compatibility, and migration
Compatibility considerations
Mark 2 is generally not backward compatible with Mark 1 cache blobs due to structural and indexing differences. Services expecting Mark 1 may need to detect format version and adapt behavior or convert caches before use. Tooling for verifying cache integrity and downgrading, where supported, is typically provided with the platform or runtime. Always refer to the official migration checklist when planning an update.
Migration practical steps
- Verify runtime and platform version support for Mark 2.
- Backup existing Mark 1 caches before any conversion.
- Run the provided conversion tool in a test environment first.
- Monitor I/O and error rates after switching to Mark 2.
- Update operational playbooks to reflect new cache layout and tooling.
Best practices and recommendations
- Use the cache format that matches your runtime and server profile; prefer Mark 2 where supported for better concurrency and footprint.
- Schedule cache conversions during low-traffic periods and validate post-migration performance.
- Monitor cache hit ratios and read latency to detect regressions early.
- Keep conversion and rollback procedures documented and tested.
- Coordinate cache updates with other patching to minimize service disruption.
Common misconceptions and clarifications
Mark 2 is not a security upgrade; encryption at rest remains a separate concern. Performance gains depend on workload, storage backend, and concurrency patterns, so results will vary. Developers should treat cache internals as implementation details and rely on documented APIs and configuration options.
Conclusion
The Division Encrypted Cache Mark 1 vs Mark 2 reflects an evolutionary shift toward more scalable, maintainable cache architecture. Mark 2’s segmented design, finer locking, and adaptive I/O aim to deliver more consistent performance and easier maintenance. Understanding these differences helps operators and developers make informed decisions about upgrades, migrations, and performance tuning in long-term deployments.