Model checking for programming languages using VeriSoft
Proceedings of the 24th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Automated Software Engineering
Jumbo: run-time code generation for Java and its applications
Proceedings of the international symposium on Code generation and optimization: feedback-directed and runtime optimization
Exploiting Heap Symmetries in Explicit-State Model Checking of Software
Proceedings of the 16th IEEE international conference on Automated software engineering
Differential Serialization for Optimized SOAP Performance
HPDC '04 Proceedings of the 13th IEEE International Symposium on High Performance Distributed Computing
Differential Deserialization for Optimized SOAP Performance
SC '05 Proceedings of the 2005 ACM/IEEE conference on Supercomputing
Isolating relevant component interactions with JINSI
Proceedings of the 2006 international workshop on Dynamic systems analysis
Carving differential unit test cases from system test cases
Proceedings of the 14th ACM SIGSOFT international symposium on Foundations of software engineering
Feedback-Directed Random Test Generation
ICSE '07 Proceedings of the 29th international conference on Software Engineering
Efficient checkpointing of java software using context-sensitive capture and replay
Proceedings of the the 6th joint meeting of the European software engineering conference and the ACM SIGSOFT symposium on The foundations of software engineering
Contract driven development = test driven development - writing test cases
Proceedings of the the 6th joint meeting of the European software engineering conference and the ACM SIGSOFT symposium on The foundations of software engineering
State extensions for java pathfinder
Proceedings of the 30th international conference on Software engineering
ReCrash: Making Software Failures Reproducible by Preserving Object States
ECOOP '08 Proceedings of the 22nd European conference on Object-Oriented Programming
Carving and Replaying Differential Unit Test Cases from System Test Cases
IEEE Transactions on Software Engineering
On the Effectiveness of Test Extraction without Overhead
ICST '09 Proceedings of the 2009 International Conference on Software Testing Verification and Validation
A Data Parallel Algorithm for XML DOM Parsing
XSym '09 Proceedings of the 6th International XML Database Symposium on Database and XML Technologies
Increasing Test Granularity by Aggregating Unit Tests
ASE '08 Proceedings of the 2008 23rd IEEE/ACM International Conference on Automated Software Engineering
Self-healing Assurance Based on Bounded Model Checking
Computer Aided Systems Theory - EUROCAST 2009
OCAT: object capture-based automated testing
Proceedings of the 19th international symposium on Software testing and analysis
Finding and reproducing Heisenbugs in concurrent programs
OSDI'08 Proceedings of the 8th USENIX conference on Operating systems design and implementation
A lightweight and portable approach to making concurrent failures reproducible
FASE'10 Proceedings of the 13th international conference on Fundamental Approaches to Software Engineering
Optimizing marshalling by run-time program generation
GPCE'05 Proceedings of the 4th international conference on Generative Programming and Component Engineering
Rethinking Soot for summary-based whole-program analysis
Proceedings of the ACM SIGPLAN International Workshop on State of the Art in Java Program analysis
Hi-index | 0.00 |
Many tools for automated testing, model checking, and debugging store and restore program states multiple times. Storing/restoring a program state is commonly done with serialization/deserialization. Traditionally, the format for stored states is based on data: serialization generates the data that encodes the state, and deserialization interprets this data to restore the state. We propose a new approach, called CoDeSe, where the format for stored states is based on code: serialization generates code whose execution restores the state, and deserialization simply executes the code. We implemented CoDeSe in Java and performed a number of experiments on deserialization of states. CoDeSe provides on average more than 6X speedup over the highly optimized deserialization from the standard Java library. Our new format also allows simple parallel deserialization that can provide additional speedup on top of the sequential CoDeSe but only for larger states.