6 years, 9 months ago.

Compile Resources. Do you have enough?

Hi Folks, Before I ask this question I must firstly say a big thank you. The MBED platform continues to be a enjoyable resource and for the most part a pleasure to use. I like the environment and for what it's worth I often personally recommend it to others.

Having said this and with respect. I often find periods during the day where the compile resources are overloaded. I understand that occasional periods of heavy loading can be expected and that to try and design a resource pool to deal with any possible level of demand is perhaps unrealistic. Yet in this case it is not occasionally. It is every day, and sometimes for long periods every day. For the last few months I have been adapting to the Americas coming online in the European late afternoon, I wait, and normally it calms down after an hour or so. Yet still, sometimes these problems occur at any time, and like today, I can only compile every 4th or 5th attempt. I like coffee but there are only so many cups I can drink during the waiting periods.

The marketing and support structure of MBED in general is great, but after all this is a technical product, if the fundamentals are troublesome, it will reflect badly on all other aspects. Slick websites and great looking logos do not compile code.

Please understand I do not wish to be a hater, I am not. When it's working, this cloud based approach is far better than local compile. I don't have to manage the tool-chain, my edits are stored remotely and my code is safe, plus I get a consistent interface. Very much a big plus.

BUT it has to work. and keep working. You don't want to jeopardize your great effort but getting a reputation for an unreliable interface.

Please, can you tell me if you are truly aware of the issue, is it compute resources, or network issues? Is it in-house or do you use external compute farms? Can it be scaled.

Basically......more compile grunt please, it's starting to be a problem.

With the utmost respect. Aidan

Finally and related. An annoying aspect to this might be something you can resolve within your web interface? I'm not sure. It is this: If I cancel a compile job when the server is not responding, the job cancels, but the server is sometimes not aware of the cancel operation, it is so busy it does not even correctly respond to the cancel request. When this happens my web browser happily cancels the dialogue locally, so I can go back to editing, but I can no longer start a new compile attempt without reloading the website. This closes all the tabs I have open and forgets where I am in the code. I have to then re-open all the files I was working on. This is clunky and time consuming. It's the little things :)

3 Answers

6 years, 9 months ago.

Hello everyone,

We are growing pretty constantly these days. More users means more load on the online compiler. We monitor the usage and try to bump up the size and number of the servers that back the online compiler whenever we seem to be exceeding their capacity.

As far as offline tools go, we have a tool, mbed CLI, for development offline. You can find it here: https://github.com/ARMmbed/mbed-cli . developer.mbed.org has a convenient "Import with mbed CLI" button (it's a drop down option on the "import into online compile" button) that gives you the command needed to import a project with mbed CLI. It also gives you an option to push your changes back to remote storage, so no worries about keeping everything locally.

Thanks

Accepted Answer

Thanks Sarah, great tip with the mbed-cli. Still, please keep your eyes closely on the on-line compiler. It is overloaded!

Maybe just a quick message to the folks who maintain that infrastructure, or better still, their manager, would help to quiet all us whining users. Feedback sometimes does not get to the people who need to know.

posted by Aidan Walton 24 Jun 2017

Thanks for your reply. I know about the CLI and we use Keil for our embedded systems courses later in the degree programme. However, the beauty of mbed (in my eyes and the reason I choose to use it to teach beginners) is the online nature of it. Very simple to get up and running etc. and not having to install offline tools. As an educator, I feel these are very positive points when it comes to engaging new learners. I can only describe the pain of having a class full of students trying to install Keil/ARM DS5 etc. on their own laptops etc. at the start of a new module.

Without the online aspect then there is no real reason for me to use the mbed platform over say, Code Composer with the cheap TI Launchpads.

posted by Craig Evans 26 Jun 2017
6 years, 9 months ago.

I definitely concur with this. I've put up with it for a while, but now I'm starting to get annoyed and mbed is losing it's appeal to me. This is quite a big deal as I teach in a large University department and often have over a hundred students relying the online compiler. When it goes down, I've suddenly got a revolt on my hands, especially when it is close to a deadline!

Just a few weeks ago I checked my emails in the morning to find a load from unhappy students as they were trying to work on their project just before the deadline and the compiler had gone down so they wanted extensions/allowances etc.

Very, very annoying!

6 years, 9 months ago.

I wonder what the cause of the issues are. Are compile resources falling away due to problems in the servers? Or are there simply a ton of random people who just happen to be compiling their HelloWorld program at the same time? Or is it just a few who send a ton of huge compilation to the servers at once?