Symphony Developer Edition
Encyclopedia
Symphony Developer Edition (Symphony DE) is a free High-performance computing
(HPC) and Grid computing
SDK and middleware
developed by Platform Computing
. It is a light-weight version of the cluster-based Symphony
commercial software. Symphony DE is aimed at providing a dedicated development environment for building compute and data-intensive applications. It has been described as "the first and only solution tailored for developing and testing Grid-ready service-oriented architecture
applications".
Symphony DE was designed to provide an easy to manage system for developers to code, test, and tune their HPC applications. From building to testing, work can be performed on one development host. Users do not have to worry about deploying and managing a full-scale cluster environment.
services.
Available Packages:
, Java
, C#, COM API). As the Symphony product evolved, its API interface has become easier to learn and use. A typical client and service can be implemented with a small number of API calls.
The Symphony DE package provides a set of examples illustrating the functionality of both client and service side APIs in common usage scenarios. These examples however, do not include any demonstration of real-life financial applications.
Existing executables such as binaries and scripts can also be integrated and run as a Symphony tasks without reimplementing the application source code. The client can use Symphony API to launch and control the execution. The limitation is that data cannot be passed between client and service.
and the Black–Scholes formula. The Symphony Service can be integrated with quantitative finance libraries such as QuantLib to model price evaluations for academics and practitioners alike.
Platform has completed technical integrations with application partners such as Murex, Summit Systems, Calypso
, Catalyst, Tillinghast
, GGY, Imagine and Codefarm.
Production applications of Symphony in Financial Services industry:
High-performance computing
High-performance computing uses supercomputers and computer clusters to solve advanced computation problems. Today, computer systems approaching the teraflops-region are counted as HPC-computers.-Overview:...
(HPC) and Grid computing
Grid computing
Grid computing is a term referring to the combination of computer resources from multiple administrative domains to reach a common goal. The grid can be thought of as a distributed system with non-interactive workloads that involve a large number of files...
SDK and middleware
Middleware
Middleware is computer software that connects software components or people and their applications. The software consists of a set of services that allows multiple processes running on one or more machines to interact...
developed by Platform Computing
Platform Computing
Platform Computing is a privately held software company that is primarily known for its job scheduling product, Load Sharing Facility . It was founded in 1992 in Toronto, Ontario, Canada and is currently headquartered in Markham, Ontario with 11 branch offices across the United States, Europe and...
. It is a light-weight version of the cluster-based Symphony
Symphony (software)
Platform Symphony is a High-performance computing software system developed by Platform Computing, the company that developed Load Sharing Facility . Focusing on the Financial Services Industry , Symphony is designed to deliver scalability and enhances performance for compute-intensive risk and...
commercial software. Symphony DE is aimed at providing a dedicated development environment for building compute and data-intensive applications. It has been described as "the first and only solution tailored for developing and testing Grid-ready service-oriented architecture
Service-oriented architecture
In software engineering, a Service-Oriented Architecture is a set of principles and methodologies for designing and developing software in the form of interoperable services. These services are well-defined business functionalities that are built as software components that can be reused for...
applications".
Symphony DE was designed to provide an easy to manage system for developers to code, test, and tune their HPC applications. From building to testing, work can be performed on one development host. Users do not have to worry about deploying and managing a full-scale cluster environment.
Latest Release
The latest iteration of the software, Symphony DE 5.1, was released in April 2011. New features include simplified application integration, improved resource harvesting, GPU support and enhanced performance and scalability.Availability
The software package is downloadable at no cost from Platform Computing's website. The DE cluster can be deployed without any time or node-count limitations. By reducing the barriers to adopting Symphony, Platform intends to promote the benefits of HPC not only to the financial services industry, but to any industries or institutions interested in using distributed computingDistributed computing
Distributed computing is a field of computer science that studies distributed systems. A distributed system consists of multiple autonomous computers that communicate through a computer network. The computers interact with each other in order to achieve a common goal...
services.
Available Packages:
Linux Linux Linux is a Unix-like computer operating system assembled under the model of free and open source software development and distribution. The defining component of any Linux system is the Linux kernel, an operating system kernel first released October 5, 1991 by Linus Torvalds... | Solaris | Windows Microsoft Windows Microsoft Windows is a series of operating systems produced by Microsoft.Microsoft introduced an operating environment named Windows on November 20, 1985 as an add-on to MS-DOS in response to the growing interest in graphical user interfaces . Microsoft Windows came to dominate the world's personal... |
---|---|---|
Linux 2.4 glibc2.2 x86 Linux 2.4 glibc2.3 x86 Linux 2.6 glibc2.3 x86 Linux 2.6 glibc2.3 x86 64-bit | Solaris 8 SPARC Solaris 10 SPARC Solaris 10 SPARC gcc3.4.3 Solaris 10 x86 | Microsoft Windows x86 Microsoft Windows x86 64-bit |
Difference between Symphony and Symphony DE
- Symphony DE does not include the Enterprise Grid Orchestrator (EGO) resource management component used by Symphony. It does support basic resource distribution and host management through its own SOAService-oriented architectureIn software engineering, a Service-Oriented Architecture is a set of principles and methodologies for designing and developing software in the form of interoperable services. These services are well-defined business functionalities that are built as software components that can be reused for...
MiddlewareMiddlewareMiddleware is computer software that connects software components or people and their applications. The software consists of a set of services that allows multiple processes running on one or more machines to interact...
. This allows developers to simulate a distributed environment on their own machines for testing clients and services without requiring a full Symphony cluster. - The web-based GUIGraphical user interfaceIn computing, a graphical user interface is a type of user interface that allows users to interact with electronic devices with images rather than text commands. GUIs can be used in computers, hand-held devices such as MP3 players, portable media players or gaming devices, household appliances and...
management console is scaled down to exclude grid specific features such as reporting and advanced resource management. The DE management console provides developers with an interface to manage applications, monitor workload, and administer the test environment in a similar fashion to the full-scale grid version. - Symphony DE includes additional developer oriented components such as the Symphony SDKSoftware development kitA software development kit is typically a set of software development tools that allows for the creation of applications for a certain software package, software framework, hardware platform, computer system, video game console, operating system, or similar platform.It may be something as simple...
, sample applications, and step-by-step developer tutorials.
Symphony SDK
Developers construct their own client (send requests, collects results) and service (accepts requests, performs computation, returns responses) using Symphony APIs in the language of their choice (C++C++
C++ is a statically typed, free-form, multi-paradigm, compiled, general-purpose programming language. It is regarded as an intermediate-level language, as it comprises a combination of both high-level and low-level language features. It was developed by Bjarne Stroustrup starting in 1979 at Bell...
, Java
Java (programming language)
Java is a programming language originally developed by James Gosling at Sun Microsystems and released in 1995 as a core component of Sun Microsystems' Java platform. The language derives much of its syntax from C and C++ but has a simpler object model and fewer low-level facilities...
, C#, COM API). As the Symphony product evolved, its API interface has become easier to learn and use. A typical client and service can be implemented with a small number of API calls.
The Symphony DE package provides a set of examples illustrating the functionality of both client and service side APIs in common usage scenarios. These examples however, do not include any demonstration of real-life financial applications.
Existing executables such as binaries and scripts can also be integrated and run as a Symphony tasks without reimplementing the application source code. The client can use Symphony API to launch and control the execution. The limitation is that data cannot be passed between client and service.
Applications
Finance
Symphony targets the Financial Services industry which demands high-performance and reliability in compute and data-intensive environments. Symphony DE can be used to develop and test financial applications that run complex mathematical algorithms such as Monte CarloMonte Carlo method
Monte Carlo methods are a class of computational algorithms that rely on repeated random sampling to compute their results. Monte Carlo methods are often used in computer simulations of physical and mathematical systems...
and the Black–Scholes formula. The Symphony Service can be integrated with quantitative finance libraries such as QuantLib to model price evaluations for academics and practitioners alike.
Platform has completed technical integrations with application partners such as Murex, Summit Systems, Calypso
Calypso Technology (software)
Calypso is a global application software provider that delivers an integrated suite of trading and risk applications to the capital markets function within banks and other companies participating in the world’s financial markets....
, Catalyst, Tillinghast
Tillinghast
Tillinghast was the world's largest actuarial practice focused on insurance and a unit of Towers Perrin specializing in risk management and actuarial consulting...
, GGY, Imagine and Codefarm.
Production applications of Symphony in Financial Services industry:
- Fixed-income derivatives and analytics. Monte CarloMonte Carlo methodMonte Carlo methods are a class of computational algorithms that rely on repeated random sampling to compute their results. Monte Carlo methods are often used in computer simulations of physical and mathematical systems...
, Black–Scholes-type applications - Credit risk management
- Risk, pricingPricingPricing is the process of determining what a company will receive in exchange for its products. Pricing factors are manufacturing cost, market place, competition, market condition, and quality of product. Pricing is also a key variable in microeconomic price allocation theory. Pricing is a...
and value at riskValue at riskIn financial mathematics and financial risk management, Value at Risk is a widely used risk measure of the risk of loss on a specific portfolio of financial assets...
(VaR) calculations - Equity derivatives trading
- Rainbow optionRainbow optionRainbow option is a derivative exposed to two or more sources of uncertainty, as opposed to a simple option that is exposed to one source of uncertainty, such as the price of underlying asset. Rainbow options are usually calls or puts on the best or worst of n underlying assets, or options which...
, Stochastic volatilityStochastic volatilityStochastic volatility models are used in the field of mathematical finance to evaluate derivative securities, such as options. The name derives from the models' treatment of the underlying security's volatility as a random process, governed by state variables such as the price level of the...
models - Sophis, Summit, Microsoft ExcelMicrosoft ExcelMicrosoft Excel is a proprietary commercial spreadsheet application written and distributed by Microsoft for Microsoft Windows and Mac OS X. It features calculation, graphing tools, pivot tables, and a macro programming language called Visual Basic for Applications...
or Fast Crisp