Csound Csound-dev Csound-tekno Search About

[Csnd] Question on table sizes

Date2013-07-12 16:03
Fromlppier
Subject[Csnd] Question on table sizes
Hi, 

I am trying the 2 sine waves below that are used by my project's oscili's
and tablei opcode's, I think I hear a difference. The one with the larger
table size sounds less harsh to me at higher frequencies. 
 
f1 0 16384 10 1 ;sine
f1 0 65536 10 1 ;sine

I've also read somewhere that with larger table sizes, one can use oscil
instead of oscili now, without the interpolation to save on cpu. Is this
true? 

Thanks.



--
View this message in context: http://csound.1045644.n5.nabble.com/Question-on-table-sizes-tp5725465.html
Sent from the Csound - General mailing list archive at Nabble.com.

Date2013-07-12 16:21
FromMichael Gogins
SubjectRe: [Csnd] Question on table sizes
Yes, larger function tables are inherently less noisy. There are mathematical reasons for this. I am not surprised you can hear the difference, so can I. I always use 65536. Maybe I should use even bigger ones. If you have anything like a recent computer, you don't need to worry about the amount of memory.

The second point also is true, more or less, but I would just go ahead and use the interpolation anyway. I haven't done any speed tests but I'd be surprised if this made much of a difference. If you do some speed tests, let us know what you find.

Hope this helps,
Mike






===========================
Michael Gogins
Irreducible Productions
http://michaelgogins.tumblr.com
Michael dot Gogins at gmail dot com


On Fri, Jul 12, 2013 at 11:03 AM, lppier <madstrum@gmail.com> wrote:
Hi,

I am trying the 2 sine waves below that are used by my project's oscili's
and tablei opcode's, I think I hear a difference. The one with the larger
table size sounds less harsh to me at higher frequencies.

f1 0 16384 10 1 ;sine
f1 0 65536 10 1 ;sine

I've also read somewhere that with larger table sizes, one can use oscil
instead of oscili now, without the interpolation to save on cpu. Is this
true?

Thanks.



--
View this message in context: http://csound.1045644.n5.nabble.com/Question-on-table-sizes-tp5725465.html
Sent from the Csound - General mailing list archive at Nabble.com.


Send bugs reports to the Sourceforge bug tracker
            https://sourceforge.net/tracker/?group_id=81968&atid=564599
Discussions of bugs and features can be posted here
To unsubscribe, send email sympa@lists.bath.ac.uk with body "unsubscribe csound"



Date2013-07-12 16:35
FromJustin Smith
SubjectRe: [Csnd] Question on table sizes
An important tradeoff, on the architecture level, is the usage of cache vs. CPU cycles. Moving data from RAM into cache can actually be more expensive than interpolating between samples (and it gets more complicated when you consider that the level of influence this has varies based on how much your other algorithms also want to populate the cache). The only way to be sure is to benchmark on your specific architecture with different tables sizes with and without interpolation, and for best results you would want some representative usage of other opcodes.


On Fri, Jul 12, 2013 at 8:21 AM, Michael Gogins <michael.gogins@gmail.com> wrote:
Yes, larger function tables are inherently less noisy. There are mathematical reasons for this. I am not surprised you can hear the difference, so can I. I always use 65536. Maybe I should use even bigger ones. If you have anything like a recent computer, you don't need to worry about the amount of memory.

The second point also is true, more or less, but I would just go ahead and use the interpolation anyway. I haven't done any speed tests but I'd be surprised if this made much of a difference. If you do some speed tests, let us know what you find.

Hope this helps,
Mike






===========================
Michael Gogins
Irreducible Productions
http://michaelgogins.tumblr.com
Michael dot Gogins at gmail dot com


On Fri, Jul 12, 2013 at 11:03 AM, lppier <madstrum@gmail.com> wrote:
Hi,

I am trying the 2 sine waves below that are used by my project's oscili's
and tablei opcode's, I think I hear a difference. The one with the larger
table size sounds less harsh to me at higher frequencies.

f1 0 16384 10 1 ;sine
f1 0 65536 10 1 ;sine

I've also read somewhere that with larger table sizes, one can use oscil
instead of oscili now, without the interpolation to save on cpu. Is this
true?

Thanks.



--
View this message in context: http://csound.1045644.n5.nabble.com/Question-on-table-sizes-tp5725465.html
Sent from the Csound - General mailing list archive at Nabble.com.


Send bugs reports to the Sourceforge bug tracker
            https://sourceforge.net/tracker/?group_id=81968&atid=564599
Discussions of bugs and features can be posted here
To unsubscribe, send email sympa@lists.bath.ac.uk with body "unsubscribe csound"




Date2013-07-12 16:37
FromMichael Gogins
SubjectRe: [Csnd] Question on table sizes

True.

On Jul 12, 2013 11:36 AM, "Justin Smith" <noisesmith@gmail.com> wrote:
An important tradeoff, on the architecture level, is the usage of cache vs. CPU cycles. Moving data from RAM into cache can actually be more expensive than interpolating between samples (and it gets more complicated when you consider that the level of influence this has varies based on how much your other algorithms also want to populate the cache). The only way to be sure is to benchmark on your specific architecture with different tables sizes with and without interpolation, and for best results you would want some representative usage of other opcodes.


On Fri, Jul 12, 2013 at 8:21 AM, Michael Gogins <michael.gogins@gmail.com> wrote:
Yes, larger function tables are inherently less noisy. There are mathematical reasons for this. I am not surprised you can hear the difference, so can I. I always use 65536. Maybe I should use even bigger ones. If you have anything like a recent computer, you don't need to worry about the amount of memory.

The second point also is true, more or less, but I would just go ahead and use the interpolation anyway. I haven't done any speed tests but I'd be surprised if this made much of a difference. If you do some speed tests, let us know what you find.

Hope this helps,
Mike






===========================
Michael Gogins
Irreducible Productions
http://michaelgogins.tumblr.com
Michael dot Gogins at gmail dot com


On Fri, Jul 12, 2013 at 11:03 AM, lppier <madstrum@gmail.com> wrote:
Hi,

I am trying the 2 sine waves below that are used by my project's oscili's
and tablei opcode's, I think I hear a difference. The one with the larger
table size sounds less harsh to me at higher frequencies.

f1 0 16384 10 1 ;sine
f1 0 65536 10 1 ;sine

I've also read somewhere that with larger table sizes, one can use oscil
instead of oscili now, without the interpolation to save on cpu. Is this
true?

Thanks.



--
View this message in context: http://csound.1045644.n5.nabble.com/Question-on-table-sizes-tp5725465.html
Sent from the Csound - General mailing list archive at Nabble.com.


Send bugs reports to the Sourceforge bug tracker
            https://sourceforge.net/tracker/?group_id=81968&atid=564599
Discussions of bugs and features can be posted here
To unsubscribe, send email sympa@lists.bath.ac.uk with body "unsubscribe csound"