Renderscript for mali GPU on Juno - renderscript

Can we run renderscript programs on MALI gpu on Juno board ? I guess we need renderscript drivers for gpu. Am i right.Can someone brief on the big picture of this scenario(like what are the hardware/software components involved,and function of each)?

I'm pleased to say that the Juno driver is expected to be released by the end of January 2015.
The January release will support 32bit RenderScript bytecode only on the GPU driver. Applications (apk's) containing 64 bit RenderScript bytecode will run on the CPU driver. It's worth noting that an application built for Android SDK version less than 21 will only contain 32bit bytecode anyway.
We expect to have 64 bit bytecode support on the GPU driver in February 2015.
I'll keep the thread here updated with further information.

Related

Scala on Linux/MIPS and Linux/PowerPC

It's now quite common for embedded systems to run Linux on MIPS or PowerPC processors.
How well do Scala programs run on such systems ?
Obviously Scala requires a JVM - are good JVMs available on MIPS and PowerPC ?
In particular are there JVMs that support JIT or AOT compilation ?
Are there any requirements beyond a JVM, the standard JRE library, and the Scala library ?
Thanks in advance,
Nick.
JamVM has full support for the Java Virtual Machine Specification Java SE 8 Edition on both Linux/MIPS and Linux/PowerPC. It is purely a JVM, in order for it to be actually useful, you need to pair it with a JRE. JamVM supports both GNU Classpath as well as the OpenJDK 6, 7, and 8 class libraries. It can also be used as a JVM inside IcedTea. It has an inline-threaded interpreter with stack caching that can give performance comparable to a simple JIT compiler, but it cannot compete with sophisticated high-performance JIT compilers such as HotSpot C2, Oracle JRockit, or IBM J9.
Chinese MIPS CPU vendor open-sourced an OpenJDK 8 port to MIPS two weeks ago.
The IBM J9 JDK naturally has support for Linux/PowerPC. Or actually rather for Linux/POWER.
A company named MicroDoc sells a MIPS port of Oracle Java SE Embedded 8 and a PowerPC port. I don't believe Scala runs on Java SE Embedded, though.

Using ARM DS-5 with Eclipse

I am trying to do some embedded programming for an online course. The IDE I had to use does not have a Linux version, so I am planning to use the ARM DS-5. It says it can be used with eclipse but I cannot figure out how to get them to work. I have Ubuntu 14.04. I read somewhere that the ARM-DS-5 wouldn't work with anything newer than indigo but that was from 2012 and am not sure how accurate that is now. Any help would be great.
Depending on the use-case, you can pick one the three DS-5 variants.
Community Edition
Free to use.
Allows Linux library/app debug using GNU tools.
Comes in two flavors - Eclipse Plugin and Full Fledged IDE.
Professional Edition
30 days free evaluation.
Allows bare-metal (no OS) and Linux kernel and app debug.
Comes with ARM compiler, debugger along with GNU tools.
Comes with FVP, ARM's virtual hardware, allowing development without real hardware.
Ultimate edition
Everything in the Professional edition plus support for ARMv8, the ARM's architecture with 64-bit support.
You can visit here to see more detailed difference between various editions.
Note there is only one DS-5 IDE installer, which is available for download here. The variant is decided based on type of license chosen. So if you download DS-5 Ultimate for 30-day eval, it can converted to Community edition by changing the license at the end of eval period.

What do x86_64, i386, ia64 and other such jargons stand for?

I frequently encounter these terms and am confused about them. Are they specific to the Processor, or the Operating System, or both?
I have Ubuntu 12.04 running on Intel i7 machine. So which one of them would apply for my case?
They are processor instruction set names:
i386 is the name of the 32-bit instruction set first implemented by Intel in the 386 processor. It became dominant thanks to dirt-cheap PC hardware.
x86-64 is the name of the AMD extension added to i386 to make it capable of executing 64-bit code. This is the one you have. It is highly compatible with i386 and will execute a 32-bit program as fast as an i386 processor.
ia64 is the name of the instruction set used in Itanium processors. The other 64-bit architecture that nobody uses anymore.
Those are cpu instruction sets. Apps installers are compiled to some subset of them. Here most difference is between 32bit(i386) and 64bits(x86_64 and ia64). You can not run app for 64bit on 32bit cpu but in reverse usually yes.
x86_64 (AMD64) cpu is most common instruction set as comes to 64bit cpu on desktop computer. It is from AMD which was few years earlier with their cpu which worked fine with x86(32-bits) instructions also.
ia64 (itanium) is from intel. Itanium works fast only with 64bits and is still used in industry.
Intel now uses x86_64 instructions from AMD due to its popularity in industry.
Sometimes key "amd" at installer package name is present and it is what you need for 64bit intel cpu.
i386 is quite old (Pentium times, pentium III has i686). To determine 32bits architecture(on desktop computers) also is used term x86 (aliases: IA-32, x86-32). There are also other architectures 32/64bit like ARM from smartphones.
Other cpu instruction sets can make compression, video coding/decoding, virtualization, random generators, security etc. to be faster and better. Windows 8 require PAE, NX, SSE2 (some of those are not present in ARM cpus so you have other version of Windows 8RT for them).
In hardware, x86_64 is a type of processor that can run both 32bit and 64bit applications just fine where ia64 runs 32bit applications SLOWER than any other CPU, as it is meant for 64bit only applications.
Moving on to the software side. I'm not sure about Ubuntu, but generally a 64bit Windows OS will allow you to use more than 3.3GBs of memory as well as the advantage of using your 64bit hardware to address memory better and have bigger than 2GB processes running. Usually on a 32bit, once an application reaches the 2GB limit, you'll get a OutOfMemory error from your application.
For a full article, refer to: http://en.wikipedia.org/wiki/64-bit_computing

Should I use Eclipse 32bits or 64bits on my new machine?

This might be a dumb/naive question, and if it is please excuse me :)
I have a brand new machine with the following specs:
Inter Core i7 2600#3.4GHz
RAM 8 GB
Windows 7
This machine has a 64 bits architecture.
On my previous machine, I used to install 32 bits versions of Eclipse and run it using a 32 bits JRE, and my current Eclipse setup works perfectly on the new machine.
I tried to install a 64bits version of Eclipse, and run it with a 64 bits JRE, and I am wondering if there are any compelling reasons to switch to this kind of setup or stick to my existing install. I guess that I would have to reinstall all the plugins, and maybe find that some of them are not compatible with the 64 bits version of Eclipse.
So far, the 64 bits version seems to need quite some more RAM than the 32 bits version, which is something that I expected, but nothing seems to have improved.
Thanks for your advice!
In general I use 64-bit Eclipse without problem, but there can be issues around plug-ins such as:
Adobe Flash Builder only works with 32-bit
The Subversion plug-in Subclipse needs a native 64-bit version of Subversion installed separately
There may be more but those are the ones I've encountered in the past.
Moving to 64-bit gives you access to more addressable memory but it won't speed anything up, in fact it might reduce performance in some cases (but nothing I see as significant to what I do).
Well the only thing that will improve is that you are able to use the advantages of 64bit. Other then that I'm not aware of any improvement.
For example what's better in 64bit is that if you have a very large project set you would be able to handle it more comfortably. For more information on 64-bit please look here
If you want to be on the edge of technology your choice would of course be the 64bit setup.
About the ram, this is expected because some of the Datatyps now use 64bit and are therefore larger to store in memory.
For most plugins you will get a 64bit version or alternative and so far for what I've used it it always worked.

Which version of Eclipse should I run on OSX? 32bit or 64bit?

This may be a silly question but should I use the 32 bit or 64 bit version of Eclipse on my Mac?
I'm fully up to date with Snow Leopard and all patches and I have a pretty recent iMac (30", Dual Core, 3GB)
I thought that Java on Snow Leopard was now 64 bit only so can't understand why there is a 32bit download. Is it just the Eclipse download page that is showing 32 bit for older versions of OSX?
You're probably better off with the 64-bit edition. Nearly all the system software is 64-bit in Snow Leopard, and if you only run 64-bit apps, you don't pay the cost of having to load the 32-bit runtimes (which can consume quite a lot of memory). It may also benefit from the 64-bit memory model, though I'm not sure how well the JVM takes advantage of that yet. I expect the 32-bit version is provided for Leopard (and earlier) compatability.
I would use 64bit Eclipse.
safe bit is 32-bit :)