Speed up your Software

Fixstars software acceleration service

The world of software acceleration

Software acceleration that makes the impossible possible

  • Until the early 2000s

    "High performance hardware era" that brought improvement in software performance without inconvenience

  • The first half of the 2000s

    However, around 2000, "Denard Scaling" lost its hold for simple miniaturization. By continuing to improve the clock frequency by miniaturization, the problem of heat generation arose. As a result, semiconductor manufacturers were forced to devise, "how to use the elements themselves", via miniaturization rather than improving the speed of the devices. In other words, increases in processor speed (clock frequency, etc.) became increasingly difficult to achieve while focus shifted towards constraining size.

  • The second half of the 2000s

    From the end of the high-performance hardware era emerges the high-performance software era―――

    Multicore processor

    The first step taken by semiconductor manufacturers was simply to arrange several processor units. By installing multiple processor units (cores), it became possible to execute multiple software instructions simultaneously.

    In order to obtain the performance improvement of multi-core processors, it is necessary for engineers to write programs that distribute the processing to each core. Therefore, unless an engineer writes software explicitly for multi-core processors, the performance gains will not be realized.

  • Now

    Thus, in the late 2000s, the IT industry entered the 'era of high performance software'. Unless an engineer considers multi-core parallelization, significant performance improvement can not be expected. And now, the improvements to the size of hardware (miniturization) is further evolved by Moore's Law. Hardware, such as many core processor, GPU, FPGA, etc., has increasingly shrunk to practical size and the range of its application has expanded. While software engineers have acquired better environments with such new hardware, we face a situation where even higher software performance is required.

    Latest hardware architecture
  • To the future
    Quantum computer

    In addition, the incremental increases of Moore's law are expected to end in the long term. In the Post Moore era, the size improvements of processors will also reach the limit. If you want more speed, you will develop a processor dedicated to a specific process, not a general-purpose processor, or a computer completely different from the previous processors. This is represented by hardware for deep learning developed rapidly in recent years; hardware such as quantum computers. In these recent circumstances, the future of software development may be to master dedicated hardware environments.

Performance-oriented proposal

Speeding up is a way to find waste and eliminate waste. It may be necessary to eliminate waste of the algorithm itself or to "eliminate waste of hardware and reduce performance". However, uselessness is a difficult problem as it also depends on product specifications and requirements.

We also propose weight reduction, improvement, reconsideration and outsourced development of algorithms for customers seeking even higher speed. By carefully examining specifications and requirements from a third-party perspective, it may be possible to improve the performance even more than expected. In addition to speeding up software, we also offer a wide range of suggestions such as hardware selection and system-wide setup.

Total cost reduction

In the actual acceleration work, the engineer has to find the time for speeding up, select the acceleration technique, and apply the selected method. To do that, we need to learn the speeding up methods, test, and iterate for the highest performing solution. This includes various elements such as knowledge of the target hardware, knowledge of the performance of the programming language to be used, compiler, library, etc., algorithm used, and so on. These learnings tend to require new learning and time-consuming costs as the development environment changes.

In Fixstars, engineers are accumulating this knowledge every day through business, and we can realize high-speed and highly efficient development. As a result, the development period is shortened, not only personnel expenses but also educational expenses can be reduced and early product launch etc. will be possible. Customers can therefore spend time on essential parts of product development.

Ability to respond to the latest technology

Algorithm

We will respond to algorithms and fields that evolve rapidly by conducting research on papers as necessary, such as the latest machine learning and deep learning algorithms, image processing, image recognition algorithms and so on. Moreover, the development corresponds to the customer's own algorithm and needs.

Hardware

Of course our expertise is not only in the latest generation CPU and GPUs, in 2017 we began support of quantum computer before many other companies. We will continue to support various hardware such as new architectures, hardware of new paradigms, and customer's own hardware.

Taylormade

The speedup of software consists of a combination of various problems and tasks. In Fixstars, we will clarify the issues and problems in order to facilitate direct communication with our engineers and achieve high speed performance. Engineers are looking for the best possible plan and offer solutions suitable for customers.

In addition, we have achieved a track record in accelerating hardware of various types from various fields such as automotive, video, medical, industrial, mobile, financial, big data,various types of CPU, GPU, FPGA, DSP, PLC, etc., and from large scale cluster to SoC. We will continue to provide software acceleration services for a wide range of problems and issues not limited to these.

Service list

Software optimization

According to customer's request (required specification), we port the existing software on the target hardware and optimize it.

Hardware research / proposal

We investigate / propose hardware specifications from the viewpoint of software development (processing performance, ease of development, etc.).

Algorithm development

We optimize your algorithm for the target processor. We also support the development of algorithms themselves.

Previous study

We support software implementation and performance evaluation at the preliminary development stage, performance estimation etc on target hardware and software development.

Software performance evaluation

We will investigate whether your software fully utilizes the hardware performance. We will also report on the problems identified and future improvement proposals.

Technical support

In addition to this, we support customers in a wide range of phases from research to product development.

Target area

In various industrial fields, we offer optimal high-speed solution for customers' products.

Automotive

Learn more

Flash storage

Learn more

Industrial equipment

Learn more

Finance

Learn more

Healthcare

Learn more

Related Solutions

We provide a variety of solutions to help speed software upgrades.

OpenCL FPGA Cards

We are providing and supporting accelerator boards equipped with FPGAs that can be designed using OpenCL (Open Compute Language).

Quantum computing

We will combine optimization technology making full use of parallel processing technology and characteristics of various accelerators with a quantum computer showing overwhelming performance to provide a new high speed solution.

Learn more

Halide to FPGA

We offer IP core for FPGA by "Halide" which can shorten Time to Market to 1/10 or less. A lot of "Halide" sample code is released.

Learn more

M 3 for Batch Processing

We provide a framework for high-speed processing of tasks expressed in the form of DAGs on the execution platform of "Asakusa Framework TM" for efficiently developing and operating batch processing of business systems doing.

M 3 for Windows HPC cluster

We provide a framework that provides functions necessary for financial institutions to use Windows HPC Server 2008 R2 as OS / middleware of cluster systems.

Fixstars  Corporation

Social Links