DAW possibility for Puppy
-
- Posts: 355
- Joined: Tue 19 Aug 2008, 21:12
- Location: Los Angeles, CA.
- Contact:
Excellent ideas coming here.. I have the link to 4.1 Alpha7 2.6.25 downloading now and will try it out once it's done.
For those of you keeping an eye on Puppy / LinuxSampler, I've added Jack Rack configuration details with gverb. See http://organs.110mb.com/MiditzerLinuxSampler.htm - Part 7.
Once I have LinuxSampler all sorted out with jOrgan I'll start focusing on getting everything together for an SFS build.
Has anyone had any experience with Qtracker? I want to try it out but simply have not had the time....
GrahamG
Johannesburg, South Africa
For those of you keeping an eye on Puppy / LinuxSampler, I've added Jack Rack configuration details with gverb. See http://organs.110mb.com/MiditzerLinuxSampler.htm - Part 7.
Once I have LinuxSampler all sorted out with jOrgan I'll start focusing on getting everything together for an SFS build.
Has anyone had any experience with Qtracker? I want to try it out but simply have not had the time....
GrahamG
Johannesburg, South Africa
-
- Posts: 355
- Joined: Tue 19 Aug 2008, 21:12
- Location: Los Angeles, CA.
- Contact:
Good news here. I downloaded the OSS driver and was able to get my M-Audio Ozone USB audio/midi interface working. Latency is down to 5.8 ms. I selected Alsa under Audio in Wine configuration and OSS in Jack. The OSS driver is available at http://www.agitprop666.com/Puppy.html Download the package, expand and put the various folders where they should go. This driver supports a bunch of different soundcards.
DAW possibility for Puppy
Hi All,
I just saw this post yesterday and I was wondering if anyone knows about the kernel being a true rt kernel. Most people have the preemption mode set as complete preemption and the frequency timer set to 1000. Does anyone know if this is the case with puppy or would the kernel need to be recompiled.
Also, are DAW people running puppy from hard drive or ram?
Thanks!
I just saw this post yesterday and I was wondering if anyone knows about the kernel being a true rt kernel. Most people have the preemption mode set as complete preemption and the frequency timer set to 1000. Does anyone know if this is the case with puppy or would the kernel need to be recompiled.
Also, are DAW people running puppy from hard drive or ram?
Thanks!
Hi Frabato,
The standard kernel that comes with Puppy 4.1 is not RT, but with the 2.6.25 kernel there is the more equal preemptive/sharing patches now in the kernel mainstream. It can be further tweaked, but Puppy is so light on resources that I haven't had ANY problems so far.
I run most stuff from the harddrive, but also boot from CDs and run in RAM when I'm testing stuff and trying new things.
GrahamG
The standard kernel that comes with Puppy 4.1 is not RT, but with the 2.6.25 kernel there is the more equal preemptive/sharing patches now in the kernel mainstream. It can be further tweaked, but Puppy is so light on resources that I haven't had ANY problems so far.
I run most stuff from the harddrive, but also boot from CDs and run in RAM when I'm testing stuff and trying new things.
GrahamG
The 2.6.25.x kernel doesn't have RT scheduling configured / enabled by default.
It's configured with a very low level of preemption (PREEMPT_VOLUNTARY).
PREEMPT_VOLUNTARY != PREEMPT
* PREEMPT_VOLUNTARY (preemption level = very low):
------------------------------------
PREEMPT_VOLUNTARY helps a bit to reduce the overall lag, but not much. The end result is massive latencies in the range of 100 ~ 500ms.
This mode makes Puppy worse than Windows Vista. Ugh!
* PREEMPT (preemption level = medium):
---------------------------------------------------------
To enable semi-RT operation,you need to recompile the kernel with the PREEMPT option enabled and activate the 1000Hz timers (essential for tight MIDI).
This allows for low latencies (as low as 2 ms), but kernel processes can still interfere with the audio threads and add additional latency.
This mode is similar to how Windows XP (Windows 7) works.
* PREEMPT_RT (preemption level = high, true RT scheduling)
----------------------------------------------------------------------
For true RT operation,you need a RT patch (which adds a PREEMPT_RT option to the kernel config) and some extra tweaks. With this patch,you have true real-time scheduling with guaranteed latencies of ~ 0.5 ms.
This mode is superior to any Windows or Mac OS,but requires a beefier CPU,because of the additional overhead (a SSE1 capable CPU performs nicely)
It's configured with a very low level of preemption (PREEMPT_VOLUNTARY).
PREEMPT_VOLUNTARY != PREEMPT
* PREEMPT_VOLUNTARY (preemption level = very low):
------------------------------------
PREEMPT_VOLUNTARY helps a bit to reduce the overall lag, but not much. The end result is massive latencies in the range of 100 ~ 500ms.
This mode makes Puppy worse than Windows Vista. Ugh!
* PREEMPT (preemption level = medium):
---------------------------------------------------------
To enable semi-RT operation,you need to recompile the kernel with the PREEMPT option enabled and activate the 1000Hz timers (essential for tight MIDI).
This allows for low latencies (as low as 2 ms), but kernel processes can still interfere with the audio threads and add additional latency.
This mode is similar to how Windows XP (Windows 7) works.
* PREEMPT_RT (preemption level = high, true RT scheduling)
----------------------------------------------------------------------
For true RT operation,you need a RT patch (which adds a PREEMPT_RT option to the kernel config) and some extra tweaks. With this patch,you have true real-time scheduling with guaranteed latencies of ~ 0.5 ms.
This mode is superior to any Windows or Mac OS,but requires a beefier CPU,because of the additional overhead (a SSE1 capable CPU performs nicely)
Last edited by synth on Wed 22 Apr 2009, 12:01, edited 15 times in total.
-
- Posts: 5464
- Joined: Fri 10 Jun 2005, 05:12
- Location: Australia
I have been playing with low-latencies since the 2.4.22 kernel in 2003!
It would be a good project for someone to create a real-time variant of Puppy 4.2.
But for those lacking the skills, you can have a Real-Time Puppy now by installing the (older) Real-Time kernel dotpet I provided in July 2007 -
http://www.murga-linux.com/puppy/viewto ... 919#127919
This kernel was compiled using the RT patch by Ingo Molnar, under Puppy 2.17, but it should work fine in the Puppy 4.x series ...
except that you couldn't compile any additional kernel modules because the build environment will be incompatible.
And this will only work for a full installation, not frugal.
It would be a good project for someone to create a real-time variant of Puppy 4.2.
But for those lacking the skills, you can have a Real-Time Puppy now by installing the (older) Real-Time kernel dotpet I provided in July 2007 -
http://www.murga-linux.com/puppy/viewto ... 919#127919
This kernel was compiled using the RT patch by Ingo Molnar, under Puppy 2.17, but it should work fine in the Puppy 4.x series ...
except that you couldn't compile any additional kernel modules because the build environment will be incompatible.
And this will only work for a full installation, not frugal.
-
- Posts: 632
- Joined: Tue 02 Oct 2007, 07:39
And that's the biggest drawback of your kerneltempestuous wrote:And this will only work for a full installation, not frugal.
(80% of the people don't want to do a full install,but prefer to run Puppy LIVE as a 'portable studio')
Ubuntu Studio sucks because theres no LIVE CD version of it and Musix is a fat, bloated hippo (live DVD? LOL)
Here's some really interesting Puppy news (RT kernel !) :
Posted on 22 Apr 2009, 3:35 by helander
I am planning to build a kernel with the RT patches applied. I have built a 2.6.29 kernel with RT and uinionfs that works fine, but for another distro (TinyCore) but for various reasons I would like to use Puppy instead. I have not yet integrated any kernel into Puppy/Woof yet, so I would like to get access to some up-to-date instructions on how to build the initrd etc. Is that somehow "automated" within Woof?
Kind Regards
Lars
-
- Posts: 5464
- Joined: Fri 10 Jun 2005, 05:12
- Location: Australia
Please feel free to go ahead and assemble a liveCD from this kernel.panzerpuppy wrote:And that's the biggest drawback of your kerneltempestuous wrote:And this will only work for a full installation, not frugal.
The patching and compilation was the hard part. All that's required for a liveCD is to reassemble the initrd with the revised modules, then reassemble the CD ISO.
I consider it bizarre that we seem to have every man and his dog (pun intended) contributing Puppy derivatives with trivial alterations to window managers and applications, but precious few contributors (such as MU, kirk, wow) who are prepared to get their hands dirty with some adjustments to the underlying Linux foundations.
Mmm. We get a lot of unsubstantiated claims on this forum.panzerpuppy wrote:(80% of the people don't want to do a full install,but prefer to run Puppy LIVE as a 'portable studio')
I would be interested to learn from from which organisation you derived that figure, and what was the survey size and methodology.
That kernel has 'Tickless system' enabled. A high-performance RT kernel should have this option turned *off*tempestuous wrote:I have been playing with low-latencies since the 2.4.22 kernel in 2003!
It would be a good project for someone to create a real-time variant of Puppy 4.2.
But for those lacking the skills, you can have a Real-Time Puppy now by installing the (older) Real-Time kernel dotpet I provided in July 2007 -
http://www.murga-linux.com/puppy/viewto ... 919#127919
This kernel was compiled using the RT patch by Ingo Molnar, under Puppy 2.17, but it should work fine in the Puppy 4.x series ...
except that you couldn't compile any additional kernel modules because the build environment will be incompatible.
And this will only work for a full installation, not frugal.
Unfortunately,that kernel is very old. I'd like to see at least a 2.6.25.x kernel (or even better - 2.6.29.x) with the RT patch.tempestuous wrote: Please feel free to go ahead and assemble a liveCD from this kernel.
The patching and compilation was the hard part. All that's required for a liveCD is to reassemble the initrd with the revised modules, then reassemble the CD ISO.
2.6.25.x was a huge improvement over the old kernel and 2.6.29 has a lot of drivers and stuff needed for modern hardware - ATI cards,Serial ATA, SSDs and the EXT4 filesystem.
-
- Posts: 632
- Joined: Tue 02 Oct 2007, 07:39
@tempestuous: Can you adapt this kernel for Puppy:
http://packages.zenwalk.org/?p=kernel-r ... on=current
(already precompiled for Zenwalk [Slackware-based distro])
http://packages.zenwalk.org/?p=kernel-r ... on=current
(already precompiled for Zenwalk [Slackware-based distro])
-
- Posts: 5464
- Joined: Fri 10 Jun 2005, 05:12
- Location: Australia
I read the various commentaries about RT and low latency at the time, and went with the current state of the art. State of the art changes over time, but also the experts can disagree.synth wrote:That kernel has 'Tickless system' enabled. A high-performance RT kernel should have this option turned *off*
In fact I just did a quick Google search now and it seems the main objection to the tickless setting with an RT kernel is that it consumes extra CPU cycles. That doesn't necessarily result in higher latency.
With the latest kernel, you may be right about keeping the ticks, but as kernel development continues I wouldn't assume that this will remain the case.
There's some interesting discussion on the subject involving the big man himself, Linus Torvalds, here
http://kerneltrap.org/node/5430
It's from 2005, but you can see the debate developing.
In any case, the kernel I contributed should be considered an early attempt at Real-Time.
I agree.synth wrote:Unfortunately,that kernel is very old. I'd like to see at least a 2.6.25.x kernel (or even better - 2.6.29.x) with the RT patch.
No. It will be missing all the patches necessary for Puppy - squashfs, unionfs, lzma etc.panzerpuppy wrote:@tempestuous: Can you adapt this kernel for Puppy:
http://packages.zenwalk.org/?p=kernel-r ... on=current
It's someone else's turn to build an RT kernel.