Further Reading

Welcome to Hastlayer's blog! It contains the latest news and announcements.

New Hastlayer website

We have a new website! This one runs on Orchard Core, which is a great CMS and web framework for ASP.NET Core, that we at Lombiq work a lot with. Otherwise, you'll find largely the same content here. And if you're interested in how we built it, check out the case study here.

v2.1.1 is released

The v2.1.0 version of Hastlayer was the first one that made it usable from NuGet packages as well, making it a lot easier for you to use it from your app. The new v2.1.1 release published today builds on top of that, adding some bug fixes. Check out the details of this release on GitHub.

Hastlayer now available on NuGet

Previously, you had to use Hastlayer from source. But not anymore! We've just published Hastlayer on NuGet: https://www.nuget.org/packages/Hast.Layer/. This of course makes it a lot easier for you to add Hastlayer to your project. We've also updated the getting started guide so check it out and start accelerating your .NET apps! So, are you writing hardware-accelerated .NET apps for satellites yet? (Yep, this is one of the things Hastlayer makes possible!)

Hastlayer is now fully open-source!

We at Lombiq are quite fond of open-source: The company was born out of open-source, and we have a huge amount of open-source activities. However, until now, Hastlayer wasn't fully open-source. This is because the hardware transformation, so the secret sauce that turns your .NET apps into their own processors, was, well, secret. Not anymore though! We recognized that building a business model of Hastlayer where we license closed-source software goes against our DNA. It's not something that aligns with how we work otherwise, we don't like it, and it doesn't go as smoothly as it can with open-source. So, back to what we believe in the most: Great software, out in the open. If you want Hastlayer to support new hardware devices (FPGAs), then we have good news too: The Hastlayer Timing Tester app is now open-source as well. You can use this to create the timing values required for hardware designs, which is at the core of creating a driver for a new device. Do you want to deep dive into the magic of what makes Hastlayer tick? Just head over to the SDK repository! We're really excited to see where you, the development community, will steer Hastlayer!

Tell us about your .NET performance challenges and win an FPGA!

Do you write a performance-intensive .NET code? Then answer the Hastlayer developer survey and win an FPGA board worth $265! Note that you need to include your e-mail address in the questionnaire. Then we'll also get back to you personally to address your feedback and you'll take part in a draw where we'll raffle off a device that you can use Hastlayer with, a Nexys A7-100T FPGA board worth $265! It's just a single-page survey! It closes on 31 January 2020, so be sure to send it in today here!

Supporting large Catapult FPGAs - Hastlayer v1.1 is here!

It's been a long time without a release, but now we're finally there: Hastlayer v1.1 is out with a lot of improvements! The biggest one is the support for the large FPGAs of Microsoft's Catapult platform. Hastlayer is now ready for complex high-performance applications! At one point a small and brave team at Microsoft thought about using FPGAs to accelerate Bing searches. This experiment proved to be a success, and thus the Project Catapult was born. Later these Catapult FPGAs found their way into all Microsoft datacenters, being used first for networking tasks and then also to build a Machine Learning accelerator, Project Brainwave. Due to its availability on Windows Catapult picked our interest and we started to make Hastlayer compatible with it. After the small development board that Hastlayer initially supported this was promising to be a huge leap in performance - but also a much harder task to complete than we initially thought. With the help of Andrew Putnam and others from Microsoft Research, and the Texas Advanced Computing Center, where Catapult nodes are available, we eventually got it done: Now it's ready and you can use these powerful FPGAs too! Everything you need to know is written in the getting started guide of the SDK. Catapult is not the only thing that ships with this release, however: there are a wealth of other shiny new parts of Hastlayer for you to check out. There are several new examples (also a Monte Carlo simulation and one written in F#), new pseudo-random number generators, tons of performance improvements and bugfixes. Check out the full release notes on GitHub. What are you gonna build if you have the power of bare metal hardware?

Hastlayer is now supported by Horizon 2020

The Horizon 2020 research and innovation programme of the European Union (or H2020 in short) is an EU-wide initiative to provide support for innovative projects and companies. This support comes in the form of grants and private investments, business coaching, and a vast international network. For projects like Hastlayer H2020 helps a lot to accelerate research, development and implementing a suitable go-to-market plan. We applied for an H2020 Phase 1 grant and won! We'll use the support Hastlayer receives to improve the platform in a way it's most beneficial to you. So let us know what you miss from Hastlayer the most: just open an issue on GitHub or drop us a line! Update: In the meantime, we got interviewed for CORDIS.

New timing values and why you should care - Hastlayer v1.0.10 released

Today we've released v1.0.10 of Hastlayer. This is mostly a bugfix release, but there is one important detail we've changed: Timing values. What are timing values and why is this a good thing? Basic operations can take a various amounts of time on the hardware that Hastlayer generates. Some operations are fast and take less than a clock cycle (like adding two 8b integers) while some other operations take more than one (like multiplying two 32b integers). Hastlayer can calculate how long an operation (or rather, a chain of operations) will take, and thus can create the best suitable hardware implementation: It will pack as many operations as possible into a single clock cycle. This is one of the reasons behind the hardware implementation's improved clock cycle (and power) efficiency: Even without parallel execution a lot can happen in a single clock cycle. How long operations take is based on hardware timing values. With this release we've updated these values after improving how we measure them. The result is that while in certain cases hardware execution will be slightly slower (and in some cases slightly faster) in all cases it will be more reliable: While previously it could happen that the hardware implementation gave a wrong result due to timing issues, now this should be very rare. As a cherry on top most hardware implementations now use fewer resources on the FPGA, so you can fit more logic onto the same chip. You can grab the new version from GitHub, or if you have the SDK repository cloned, just pull the changes. We hope you'll see your Hastlayer hardware implementations fly even better now! And if you have any issues, get in touch with us!

Now you can use Hastlayer after a simple registration!

Before you had to send us an e-mail and sign a contract to get access to Hastlayer Remote Services, i.e. the part of Hastlayer that does the heave lifting. Now this is much more streamlined: just click "Create Apps" in the above menu and you can use Hastlayer within seconds! Now there is no paperwork to frighten you any more :). Create a Hastlayer app today!

v1.0.9 released with many fixes and a new sample

Hastlayer v1.0.9 is out! Not many new features but you'll love these bugfixes! Here are the most important changes: Binary operator expressions (like 1 + 2) could in some cases give incorrect results, as could remainder operations (e.g. 9 % 4). These are all fixed now. When you try to transform a piece of code with Hastlayer which Hastlayer doesn't support now better error messages will be surfaced, hinting you what exactly the problem is. And there is also a new Loopback sample that just sends back what you send it from the host PC. This is to test connectivity and use as a generic testbed. Hope you'll like these! We've been working on features too, for example adding floating point support, which is mostly done now. We'll talk about it at various conference, starting with ones in Singapore this week!