|
| Services |
|
|
|
|
|
Blue Sail Software is available to provide development consultation
services for nearly any C/C++ software project. Our
areas of expertise span a broad
range of software disciplines such as scientific computing,
visualization, GUI programming, and Linux drivers. We possess the
ability to quickly absorb the structure and execution of your software
which provides a fast turnaround on delivering code additions and/or
modifications that are requested.
|
|
|
|
Software running a little too slow? Frames-per-second not up to par?
Our expertise in software optimization is the ideal solution for
boosting the performance of your application.
|
|
Blue Sail Software offers three distinct levels of service for C/C++
software performance optimization:
|
|
|
|
|
|
Many speed increases can be attained without changing too
much of the original source code. Many common optimization
techniques like loop hoisting, branching reductions,
floating-point to integer conversions, and memory alignment
issues are difficult for modern compilers to automatically
perform. We specialize in optimizing these often overlooked
areas which can noticeably boost overall application
performance, especially if they occur in bottleneck
locations. This level of optimization is very general but
very effective in that all of the modifications should
increase performance regardless of the processor architecture
or compiler.
|
|
|
|
|
|
|
|
|
|
Working with an efficiently coded application, the
performance modifications are usually more pronounced.
Specialized techniques and 'tricks' such as lookup tables,
instruction ordering based on latencies, and cache coherency
should deliver an additional performance boost, but these
generally require more effort in terms of programming and
code size. Although most of these specific techniques are
closely related to processor architecture for optimal
performance, the improvements should be noticeable for most
modern processors.
|
|
|
|
|
|
|
|
|
|
The last resort for pushing performance levels to the
theoretical limits are often obtained using assembly level
programming. Although modern compilers can often 'get it
right' and produce near optimal assembly code for a given
architecture, there are numerous instances where low-level
assembly coding can beat the compilers. This last level of
optimization is ideal for those specialized applications that
need every last bit of performance that can be mustered. By
directly targeting the bottleneck areas of your application,
assembly level optimization will produce near-optimal
performance for the given architecture. Blue Sail Software
specializes in x86 assembly coding with expertise in
MMX/SSE/SSE2 instruction-based optimizations.
|
|
|
|
|
|
|
|
|
Blue Sail Software engineers have many years experience with the Windows
and Linux operating systems. Our expertise in porting software between
platforms and source languages can bring your legacy code up to todays
standards in order to ease maintenance and future upgrades. We have
a great deal of experience porting Fortran codes to C/C++ while
preserving the performance.
|
|
Please feel free to
send us an email
for more information on pricing and custom quotes.
|
|