Linux Toolchain Updates

Bill O.

We have updated the Linux toolchain, see:

http://developer.mips.com/tools/compilers/open-source-toolchain-linux/

for details

No Comments

Linux 3.0.4

Bill O.

Linux on MIPS Kernel 3.0.4 now available  http://developer.mips.com/linux/

No Comments

Android Updates

Bill O.

Froyo

Today we released the “r8″ version of Android Froyo on MIPS.  The source code and release notes are available here:

http://developer.mips.com/android/android-source-code/

This release has substantial bug fixes and improvements, see release notes for details.

Ice Cream Sandwich

In the next several months Google will release Ice Cream Sandwich to open source.  You can find information here on how to get a head start on Ice Cream Sandwich on MIPS.

http://developer.mips.com/android/

 

No Comments

Open Source Toolchains for MIPS

Bill O.

Open Source Linux and ELF toolchains for MIPS are now available for download.  For more information see:

http://developer.mips.com/tools/compilers/bare-metal-toolchain/
http://developer.mips.com/tools/compilers/open-source-toolchain-linux/

No Comments

MIPS Android NDK Appnote

Bill O.

Are you working on Android apps development? This appnote on the MIPS NDK describes how to build Android applications in native C or C++.   http://tinyurl.com/3n5bn6k

No Comments

RetroBSD: A Port of BSD Unix to a Microchip PIC32 Microcontroller

Bill O.

Read Serge Vakulenko blog on “RetroBSD: A Port of BSD Unix to a Microchip PIC32 Microcontroller”

http://developer.mips.com/2011/08/06/about-retrobsd-a-port-of-bsd-unix-to-a-microchip-pic32-microcontroller/

 

No Comments

About RetroBSD: A Port of BSD Unix to a Microchip PIC32 Microcontroller

Serge V.

About RetroBSD: A Port of BSD Unix to a Microchip PIC32 Microcontroller

By Serge Vakulenko

I started this work a year ago as a hobby project. Now I can demonstrate a demo, running real Unix on a tiny development board.

The project is hosted on Google Code: http://code.google.com/p/retrobsd/.

The system is targeted to a market of small embedded systems. Main features include:

  • Small resource requirements: RetroBSD requires only 128 kbytes of RAM to be up and running user applications.
  • Memory protection: Using hardware mechanisms, kernel memory is fully protected from the user application.
  • Open functionality: Usually, a user application is fixed in Flash memory, but in the case of RetroBSD, any number of applications could be placed into the SD card, and run as required.
  • Real multitasking: Standard POSIX API is implemented (fork, exec, wait4 etc).
  • Development system on-board: It is possible to have a C compiler in the system, and to recompile the user application (or the whole operating system) when needed.

RetroBSD is based on 2.11BSD: the last in the series of Berkeley Unixes for the PDP-11 architecture. I ported the kernel, C library and a set of basic utilities to the MIPS32 architecture, using GCC/Linux as a development environment. I also created a PIC32 simulator based on the VirtualMIPS opensource project (http://code.google.com/p/virtualmips/).

There exists a similar system named uCLinux that is widely used for similar purposes. But uCLinux requires ten times more RAM than RetroBSD. It also has a limited multitasking capability (no fork), no memory protection and no C compiler on-board.

I believe that RetroBSD could be quite popular for small embedded systems. For example, it’s possible to make something like a ‘Unix stamp’, as opposed to the widely known Basic stamp.

9 Comments

Dalvik Turbo Updated

Bill O.

We have posted updated versions of Dalvik Turbo for Android. Included in this update are multiple binary versions for hard and soft floating point supporting Froyo and Gingerbread. The files are available at: http://developer.mips.com/login/dalvik-turbo/

2 Comments

Skype Development Update

Bill O.

Here at MIPS we have been working closely with Skype to optimize the Skype CODEC for MIPS. Today Skype announced that their Skype development kit “SkypeKit” is now open to the broader development community. Skype is the de facto video conferencing tool for PC’s and is quickly becoming pervasive on all TV’s and smart phones. You can find out more information about the SkypeKit at http://developer.skype.com

No Comments

Android Gingerbread R2 released

Bill O.

We are pleased to announced the release of Android Gingerbread R2.  See the Android source code page for downloading instructions.

New Features:

  • Stagefright mediaframework is optimized for MIPS ISA and tested. MIPS DSP optimizations are done to VP8, tremolo and MP3 decoder.
  • Gingerbread code is updated to 2.3.43.
  • Moved to new FSF compiler 4.4.64.
  • Miscellaneous CTS failures are brought down considerably.
  • v8 has approximately 4.5% improvement of benchmark scores on 24K class cores, higher on 74K class cores.


Click the more button to see the complete release notes.

1 Comment

Working with Android CTS

Bill O.

“CTS” is the Android Compatibility Test Suite and comes with Android source code.  As stated on the Android website “Devices that are properly compatible can seek approval to use the Android trademark”.  This means that your product needs to pass CTS before it can be Android approved.  Information on the CTS tools can be found at: http://source.android.com/compatibility/cts-intro.html.

CTS runs on a host and target device (phone, tablet, etc.), the host downloads tests to the target, monitors the results and generates the report.  CTS runs a test plan which is provided with the Android source code.  The complete test plan contains more than 20,000 individual tests and can take most of a day to complete.  It is common during the development phase that you would want to run only the failed tests.  CTS has the ability to create a custom test plan which consists of only the previously failed tests, this is a major time saver during development when you are making a lot of changes.

Here at MIPS, we run CTS in our automated testing infrastructure.  One of the challenges with CTS is that the generation of the custom “failed tests only” test plan has to be done from an interactive interface.  Interactive interfaces don’t work well with automation! 

Nishant Singh in our testing group has developed a very simple script using the “Expect” (http://expect.sourceforge.net/) scripting tool to solve this problem.  This script allows the custom plan to be created during the automated run of CTS. 

#!/usr/bin/expect
spawn cts
expect “cts_host”
send “add –derivedplan FailedCases_99 -s 1 -r fail\n”
#expect “Create a new session \[0\]”
#expect “Choose a session \[1\]”
#send “1″
interact

So use this little script and you won’t need any human intervention!

1 Comment

MIPS M14K vs. Freescale Kinetis CoreMark/MHz claims

Bill O.

Don’t believe everything you read! Ian Anderton blogs on Freescale’s recent announcement about performance claims for their Kinetis microcontroller. http://www.mips.com/blog/?p=108

No Comments

Android NDK Update

Bill O.

We have added an Android NDK that supports software floating point for systems that don’t have a hardware floating point processor.  See http://developer.mips.com/android/android-apps-development/ under the Linux section.

No Comments

Android utility to measure CPU load

Bill O.

We have posted an android utility to measure CPU loading.  You can use this utility on any Android device, regardless of CPU type to monitor and measure the loading.  The utility can be downloaded from this page http://developer.mips.com/?page_id=70

 

No Comments

Google Calls Out Rivals’ Web Benchmark Tools

Zenon Fortuna

MG Sieler at Techcrunch wrote the following article about Google’s efforts on performance benchmarking

——————————————————————————–

Google Calls Out Rivals’ Web Benchmark Tools, Rebuilds Them To Better Gauge Chrome

MG Siegler

When it comes to Chrome, Google has long been addicted to speed. And for many tasks on the web today, that speed is related to how fast your JavaScript engine is. Google has long held that their’s is the fastest. But it’s hard to know for sure because there are a few different benchmark suites to test such speeds — and the most popular ones are made by companies with stakes in the game: Apple, Mozilla, and yes, Google.

In a post yesterday on their Chromium, it’s pretty clear that Google feels their V8 benchmark suite is the best. In fact, they directly call out their rivals’ suites, noting bugs and saying that they must evolve. And then they go one step further: providing links to versions of the rivals’ suites supposedly perfected by Google!

Wow. In the extremely nerdy (and fairly incestuous) browser world, this is hardcore.

Specifically, Google says that SunSpider, first developed by Apple in 2007, contains tests that are “less relevant to the web in 2011″. Here’s the best part:

Even for the more relevant tests, JavaScript has gotten so fast that many finish in only a few milliseconds. This just isn’t long enough to figure out which engine is faster–a golf cart and a Tesla will finish a 10-foot race in nearly the same time.

Ouch.

To fix this issue, Google made its own modified version of SunSpider which essentially runs tests 50 times consecutively to better gauge speed. When the tests are run this way, Google says that “the results begin to reflect Chrome’s true performance.” Naturally. According to Google, Chrome is more than 30 percent faster (in the test results) when measured this way.

Meanwhile, they say that Kraken, the new benchmark suite Mozilla just created, is “in better shape” — but buggy. “As a result, the benchmark is less useful and has even (mis)led us to spend time making some irrelevant optimizations in Chrome,” they note.

Again, ouch!

To get around this, Google is now hosting a new version of Kraken “built directly from Mozilla’s source code repository”.

Are these claims about rivals’ suites legit? It’s hard to say for sure, but I have a feeling that the rivals themselves would dispute that. It is a bit odd that Google is reworking the suites, and that the end result is Chrome performing much better in the tests.

Of course, my eyes don’t lie. I’m a Chrome guy all the way because in daily usage I find it to be much faster than either Safari or Firefox (on a Mac, at least). Until that changes, I’m trusting Google on this one.

————————————————————————————————————————

I think Google is “right on the money” but from what I read they went only “half way” towards JavaScript benchmarks improvements.

The issue with duration of particular test runs is important, and IMHO should be calibrated depending on the speed of the HW on which the tests are run.

I did not do this kind of calibration for JavaScript benchmarks, but have seen a similar dependency on the MultiBench benchmark.

Testing MultiBench on MIPS systems should take into account two features:

  1. To run each tests long enough, so that the time measurements are precise.
  2. To avoid running tests too long, otherwise the whole benchmark will be painfully slow.

In addition, when varying parameters of the system (the number of cores, cache sizes, clock speed, memory configuration, etc) one would wish to satisfy the “feature 1″ (i.e. running long enough) on the seemingly fastest configuration.  And the number of iterations (repetitions of the tests?) should better be kept identical for the slate of the benchmark runs in given experiment.

Therefore, the best solution would be to run the “calibration execution” on the fastest configuration and extract the calibrated iterations into, say, “iterations.txt” file …  which should be used later for the benchmarks.

Coming back to the MultiBench results:  When leaving the default number of iterations for the tests, one can get 3-5% worse results comparing to the results obtained with better tuned number of iterations.

-Zenon

1 Comment

Meetup with MIPS

Bill O.

Join our meetup and meet the MIPS team at a location near you http://www.meetup.com/mips-technologies

No Comments

Meet the MIPS team at Google I/O

Bill O.

We’re going to be at Google I/O in San Francisco sending live updates, follow us on Twitter @mipsdev. We will also be meeting with developers during the show, stay tuned for meetup information.

No Comments

MIPS & Honeycomb!

Bill O.

MIPS gets sweet with Honeycomb!

http://www.eetimes.com/electronics-news/4215490/MIPS-gets-sweet-with-Honeycomb

No Comments

This week’s updates

Bill O.

Are you a MIPS NavICS user?  You can now get beta releases of our NavICS development system!  find them here http://developer.mips.com/?page_id=471

Working with Android on a Sigma Designs platform? Sigma had updated the bring-up instructions, look here for instructions and how to access the latest versions of Android for Sigma  http://developer.mips.com/?page_id=663

No Comments

This week’s updates

Bill O.

Check out the “Tools” section for all kinds of information and videos on our software development tools.  If you are developing Skype for MIPS, regularly check the “Multimedia Stacks” section under the “Resources” tab for Skype updates.  http://developer.mips.com

No Comments