[yoshimi] Re: Compiling for Arm....

  • From: "John Fox" <dmarc-noreply@xxxxxxxxxxxxx> (Redacted sender "sirjohndfox" for DMARC)
  • To: "yoshimi@xxxxxxxxxxxxx" <yoshimi@xxxxxxxxxxxxx>
  • Date: Thu, 10 Nov 2016 04:47:54 +0000 (UTC)

I think i noticed an improvement by adding these flags to the basic build 
config...-O3 -mtune=cortex-a15 -marm -mfpu=neon 

making some progress.... :)
just a thought... Is there any performance gains to be had by some how running 
the synth in mono?
It also seems from what you said previously that the ram can be an issue... 
This board only has 2GB so i'm working on pairing down ram usage.... I can turn 
off the hdmi and gpu for example...
I wondering in some ideal future world something like KGPU, which enables the 
gpu to be used for parts of ordinary processing, could  be used to enhance 
performance? I'm not using a display, so the gpu's going to waste....
Anyroad i'll keep plugging away...
next is designing a hardware interface....
Cheers for your encouragement and awesome patches....John

      From: Will Godfrey <willgodfrey@xxxxxxxxxxxxxxx>
 To: yoshimi@xxxxxxxxxxxxx 
 Sent: Wednesday, November 9, 2016 9:50 PM
 Subject: [yoshimi] Re: Compiling for Arm....
   
Hi John,

On Wed, 9 Nov 2016 06:07:44 +0000 (UTC)
"John Fox" <dmarc-noreply@xxxxxxxxxxxxx> (Redacted sender "sirjohndfox" for
DMARC) wrote:

ok... I managed to compile the latest code on Debian jessie by removing the 
sse flags... not sure what this does to performance.... 
I have an RT PREEMPT kernel running...
here are the specs of my 
boardhttp://www.hardkernel.com/main/products/prdt_info.php?g_code=G143452239825&tab_idx=2

SSE is math optimisation specific to 386 type processors. We don't do anything
with it directly, but obviously the underlying math routines will.  On a very
old AMD machine I can run without it (have to, it's not supported!) but at
much reduced performance.

at the moment:
staccato notes seem to introduce a lot of xruns... also if i add a little 
release to the amp envelope it seems to have issues....
my audio interface is a presonus 2x2
and my jack settings are 64 and  3

I don't know the presonus at all, but usually when starting from scratch on
unknown hardware I start with a  period size of 512 and work down from there.

The elephant in the room is the Note On event. This can create big spikes in
processor usage (especially for AddSynth voices) that are gone too quickly for
jack's monitoring to pick up.

Also, I'm doing a bit of investigation into note creation and destruction.
There is a lot of memory management going on at that time, so staccato notes
will be especially critical.

We probably need to instigate a memory pool specifically for notes, but whether
I have the skill to do that is another matter - especially with everything
else that's going on in the code at the moment :(

Increasing note tails (envelope release) makes that a double whammy is it will
increase the background processing.

I found this 
article....http://codesuppository.blogspot.com.au/2015/02/sse2neonh-porting-guide-and-header-file.html

Is this the direction i should look in?
I'm under the impression that i should at least be able to get 2 or 3 voices 
reliably sounding with a modest amount of polyphony...The processor doest 
seem to be loaded excessively during use....
I hope someone has some ideas.....

If there are flags for the complier recognising this, then setting them should
help. Beyond that, I've no idea.

I also have an rpi3 i'll try out next.... Here's hoping

I think someone else got reasonable results with the Pi, but can't remember if
it was on here or somewhere else. Our other Odroid user seems to have gone very
quiet!

Good luck, and thanks for letting us know how you're getting on.

-- 
Will J Godfrey
http://www.musically.me.uk
Say you have a poem and I have a tune.
Exchange them and we can both have a poem, a tune, and a song.
Yoshimi source code is available from either: 
http://sourceforge.net/projects/yoshimi
Or: https://github.com/Yoshimi/yoshimi
Our list archive is at: https://www.freelists.org/archive/yoshimi
To post, email to yoshimi@xxxxxxxxxxxxx

   

Other related posts: