Adding a New SolidOpt Subproject

SolidOpt has contains relatively self containing libraries, in the form of projects. They are mainly divided under the Transformations folder. In order to make the creation of new subproject and to add it to SolidOpt build system we have created a simple script automatizing the process.
The script is called and is located under SolidOpt_SRC_DIR/tools.

SolidOpt Build System

SolidOpt Framework is almost entirely using cmake as a build system. This has several advantages:

  • Gives us more control over the entire build process.
  • Allows "templetizing" the source files where possible: For example, we extract out the common parts from AssemblyInfo.cs for each assembly and let cmake substitute the necessary information in order to adapt it to the concrete assembly.

SolidOpt – A framework for automated optimization of software applications. Domain-specific optimizations.

Abstract: Vassil Vassilev's MSc Thesis describes the foundations of the framework. It analyzes the main problems in the field and compares many existing relevant utilities. It proposes and architecture and prototype of the framework, called SolidOpt. It provides detailed arguments for the approaches that are used in designing and implementing the prototype.

Published: University of Plovdiv "Paisii Hilendarski", 2010

SolidOpt - Innovative Multiple Model Software Optimization Framework

Abstract: This paper discusses building up a framework, which helps the automated and dynamic optimization of the software. Disadvantages of existing frameworks and systems are described. We determine the underlying main ideas and principles in the development of SolidOpt framework. The advantages and the need of using multiple models are discussed. We suggest a scheme, which generalizes the multiple model ideas. Software processes and their interaction with the (operational) environment are analyzed.

Applying Model-View-Controller in Geometric Modelling Methodology

Abstract: Article describes the union of architectural pattern MVC and five-layer architecture for geometric modelling. Main purpose is creation of high-modular interactive systems. The imple-mentation includes different reusable object-oriented design patterns and shows a possible ap-plication of the architectural union.

Published: International conference Varna 2008

Information about our SVN

We use Subversion (svn) for version control of our codebase. There are two kinds of access to the repository anonymous and non-anonymous.

Anonymous Access to SVN Repository

Anyone interested downloading the source code of the project can do it using the anonymous access of our repository:


The section Howto is dedicated to explanations and tutorials that will help our users to find their way in SolidOpt quickly. However, SolidOpt is changing quickly and some of the tutorials might be outdated. If that is the case please contact us at our corresponding mailing list.


Here is a list of the relevant to SolidOpt papers.


Downloading SolidOpt

svn co solidopt-src

Detailed information could be found at: our developers' section.


You can check out our online doxygen-generated documentation. It is built based on the comments in SolidOpt's codebase every hour if there was change.

The documentation is under development and improvement. Apologies if is incomplete or old-dated. Any contributions to it are very welcome!