Kernel Newbies archive on lore.kernel.org
 help / color / Atom feed
* Do I need strong mathematical bases to work in the memory subsystem?
@ 2019-09-29 22:48 CRISTIAN ANDRES VARGAS GONZALEZ
  2019-09-30  5:06 ` Valdis Klētnieks
  0 siblings, 1 reply; 11+ messages in thread
From: CRISTIAN ANDRES VARGAS GONZALEZ @ 2019-09-29 22:48 UTC (permalink / raw)
  To: kernelnewbies

[-- Attachment #1.1: Type: text/plain, Size: 163 bytes --]

Hello good morning, to be developed from the kernel do I need to have good
math bases? I want to help in the ram memory subsystem and I have that
doubt thank you.

[-- Attachment #1.2: Type: text/html, Size: 346 bytes --]

<div dir="ltr"><br class="gmail-Apple-interchange-newline"><span style="font-family:arial,sans-serif;white-space:pre-wrap;background-color:rgb(248,249,250)">Hello good morning, to be developed from the kernel do I need to have good math bases?
I want to help in the ram memory subsystem and I have that doubt

thank you.</span>  <br></div>

[-- Attachment #2: Type: text/plain, Size: 170 bytes --]

_______________________________________________
Kernelnewbies mailing list
Kernelnewbies@kernelnewbies.org
https://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: Do I need strong mathematical bases to work in the memory subsystem?
  2019-09-29 22:48 Do I need strong mathematical bases to work in the memory subsystem? CRISTIAN ANDRES VARGAS GONZALEZ
@ 2019-09-30  5:06 ` Valdis Klētnieks
  2019-10-03  1:47   ` Ruben Safir
  0 siblings, 1 reply; 11+ messages in thread
From: Valdis Klētnieks @ 2019-09-30  5:06 UTC (permalink / raw)
  To: CRISTIAN ANDRES VARGAS GONZALEZ; +Cc: kernelnewbies

[-- Attachment #1.1: Type: text/plain, Size: 957 bytes --]

On Sun, 29 Sep 2019 17:48:43 -0500, CRISTIAN ANDRES VARGAS GONZALEZ said:

> Hello good morning, to be developed from the kernel do I need to have good
> math bases? I want to help in the ram memory subsystem and I have that
> doubt thank you.

Depends what you mean by "strong math basics".  You'll *definitely* need to
understand decimal/hexadecimal/binary/octal and how to convert between
them. Understanding algebra is useful.

If you've had some intro to complexity theory so you understand why an O(N^2)
algorithm is usually worse than one that's O(N log N), that helps. Also,
knowing enough computing theory to understand what a finite state machine is,
and why to use one, and how to write code to implement one, is useful.

You *probably* don't need calculus or deep number theory or a lot of other
pure math.

Programming in the kernel doesn't require any more math than what's required
for competent programming in userspace.

[-- Attachment #1.2: Type: application/pgp-signature, Size: 832 bytes --]

[-- Attachment #2: Type: text/plain, Size: 170 bytes --]

_______________________________________________
Kernelnewbies mailing list
Kernelnewbies@kernelnewbies.org
https://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: Do I need strong mathematical bases to work in the memory subsystem?
  2019-09-30  5:06 ` Valdis Klētnieks
@ 2019-10-03  1:47   ` Ruben Safir
  2019-10-03  3:35     ` Valdis Klētnieks
  0 siblings, 1 reply; 11+ messages in thread
From: Ruben Safir @ 2019-10-03  1:47 UTC (permalink / raw)
  To: kernelnewbies

On 9/30/19 1:06 AM, Valdis Klētnieks wrote:
> On Sun, 29 Sep 2019 17:48:43 -0500, CRISTIAN ANDRES VARGAS GONZALEZ said:
> 
>> Hello good morning, to be developed from the kernel do I need to have good
>> math bases? I want to help in the ram memory subsystem and I have that
>> doubt thank you.
> Depends what you mean by "strong math basics".  You'll *definitely* need to
> understand decimal/hexadecimal/binary/octal and how to convert between
> them. Understanding algebra is useful.
> 
> If you've had some intro to complexity theory so you understand why an O(N^2)
> algorithm is usually worse than one that's O(N log N), that helps. Also,
> knowing enough computing theory to understand what a finite state machine is,
> and why to use one, and how to write code to implement one, is useful.
> 
> You *probably* don't need calculus or deep number theory or a lot of other
> pure math.


I've heard this for years and when I went back for my PhD and Masters
degree in comp sci, I found out, low and behold, this is just not true.

If you hope to do anything that is not elementry, you need serious math
for the algorithms, not to mention to complete the jobs being done.

Knowing math is the real key to unlocking to potential of the power of
computational mathmatics.


-- 
So many immigrant groups have swept through our town
that Brooklyn, like Atlantis, reaches mythological
proportions in the mind of the world - RI Safir 1998
http://www.mrbrklyn.com
DRM is THEFT - We are the STAKEHOLDERS - RI Safir 2002

http://www.nylxs.com - Leadership Development in Free Software
http://www.brooklyn-living.com

Being so tracked is for FARM ANIMALS and extermination camps,
but incompatible with living as a free human being. -RI Safir 2013

_______________________________________________
Kernelnewbies mailing list
Kernelnewbies@kernelnewbies.org
https://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: Do I need strong mathematical bases to work in the memory subsystem?
  2019-10-03  1:47   ` Ruben Safir
@ 2019-10-03  3:35     ` Valdis Klētnieks
  2019-10-03  3:42       ` Ruben Safir
  0 siblings, 1 reply; 11+ messages in thread
From: Valdis Klētnieks @ 2019-10-03  3:35 UTC (permalink / raw)
  To: Ruben Safir; +Cc: kernelnewbies

[-- Attachment #1.1: Type: text/plain, Size: 876 bytes --]

On Wed, 02 Oct 2019 21:47:42 -0400, Ruben Safir said:

> I've heard this for years and when I went back for my PhD and Masters
> degree in comp sci, I found out, low and behold, this is just not true.

The question was specific to *kernel* development.

Look around.  Does Linus have a PhD?  How many people at the last Kernel Plumber's
or Kernel Summit have PhDs?

I'm willing to bet that there's very few PhD's in CS listed in MAINTAINERS.  And
those that are, are probably coincidental...

> If you hope to do anything that is not elementry, you need serious math
> for the algorithms, not to mention to complete the jobs being done.
>
> Knowing math is the real key to unlocking to potential of the power of
> computational mathmatics.

If you're doing that sort of mathematics *inside the kernel*, there's probably something
wrong with your overall design.

Just sayin'.

[-- Attachment #1.2: Type: application/pgp-signature, Size: 832 bytes --]

[-- Attachment #2: Type: text/plain, Size: 170 bytes --]

_______________________________________________
Kernelnewbies mailing list
Kernelnewbies@kernelnewbies.org
https://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: Do I need strong mathematical bases to work in the memory subsystem?
  2019-10-03  3:35     ` Valdis Klētnieks
@ 2019-10-03  3:42       ` Ruben Safir
  2019-10-03  7:00         ` Greg KH
                           ` (2 more replies)
  0 siblings, 3 replies; 11+ messages in thread
From: Ruben Safir @ 2019-10-03  3:42 UTC (permalink / raw)
  To: kernelnewbies

On 10/2/19 11:35 PM, Valdis Klētnieks wrote:
> On Wed, 02 Oct 2019 21:47:42 -0400, Ruben Safir said:
> 
>> I've heard this for years and when I went back for my PhD and Masters
>> degree in comp sci, I found out, low and behold, this is just not true.
> 
> The question was specific to *kernel* development.

Actually yes


> 
> Look around.  Does Linus have a PhD?  How many people at the last Kernel Plumber's
> or Kernel Summit have PhDs?
> 

Linus has a Masters in Comp Sci, not that he is the greatest engineer ever.

> I'm willing to bet that there's very few PhD's in CS listed in MAINTAINERS.  And
> those that are, are probably coincidental...
> 

I can't testify to that, but there are ton of Master Degree coders and a
lot of mathamaticians.

General plumbing is not needed, but predictive trees, and crypto
certainly do and some hardware problems need calc, or even integration.

The harder the job, the more math is needed.

>> If you hope to do anything that is not elementry, you need serious math
>> for the algorithms, not to mention to complete the jobs being done.
>>
>> Knowing math is the real key to unlocking to potential of the power of
>> computational mathmatics.
> 
> If you're doing that sort of mathematics *inside the kernel*, there's probably something
> wrong with your overall design.
> 

Maybe, but I don't think so.  And the hardware is getting more exotic.

> Just sayin'.
> 
> 
> _______________________________________________
> Kernelnewbies mailing list
> Kernelnewbies@kernelnewbies.org
> https://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies
> 


-- 
So many immigrant groups have swept through our town
that Brooklyn, like Atlantis, reaches mythological
proportions in the mind of the world - RI Safir 1998
http://www.mrbrklyn.com
DRM is THEFT - We are the STAKEHOLDERS - RI Safir 2002

http://www.nylxs.com - Leadership Development in Free Software
http://www.brooklyn-living.com

Being so tracked is for FARM ANIMALS and extermination camps,
but incompatible with living as a free human being. -RI Safir 2013

_______________________________________________
Kernelnewbies mailing list
Kernelnewbies@kernelnewbies.org
https://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: Do I need strong mathematical bases to work in the memory subsystem?
  2019-10-03  3:42       ` Ruben Safir
@ 2019-10-03  7:00         ` Greg KH
  2019-10-03 10:55           ` Ruben Safir
  2019-10-06  1:49         ` Grant Taylor
  2019-10-16 15:18         ` Cindy Sue Causey
  2 siblings, 1 reply; 11+ messages in thread
From: Greg KH @ 2019-10-03  7:00 UTC (permalink / raw)
  To: Ruben Safir; +Cc: kernelnewbies

On Wed, Oct 02, 2019 at 11:42:04PM -0400, Ruben Safir wrote:
> On 10/2/19 11:35 PM, Valdis Klētnieks wrote:
> >> If you hope to do anything that is not elementry, you need serious math
> >> for the algorithms, not to mention to complete the jobs being done.
> >>
> >> Knowing math is the real key to unlocking to potential of the power of
> >> computational mathmatics.
> > 
> > If you're doing that sort of mathematics *inside the kernel*, there's probably something
> > wrong with your overall design.
> > 
> 
> Maybe, but I don't think so.  And the hardware is getting more exotic.

"more complex" does not mean "needs more math.  Look at the new USB4
spec, and the patches posted to start adding support for that to the
kernel.  No "math" in there at all other than very simple stuff.

And no one can say that USB for is not "serious", so I agree with
Vladis, a deep mathmatical background is not needed for almost all of
the kernel.  It's just simple C code, nothing to be afraid of.

greg k-h

_______________________________________________
Kernelnewbies mailing list
Kernelnewbies@kernelnewbies.org
https://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: Do I need strong mathematical bases to work in the memory subsystem?
  2019-10-03  7:00         ` Greg KH
@ 2019-10-03 10:55           ` Ruben Safir
  2019-10-03 16:51             ` Valdis Klētnieks
  0 siblings, 1 reply; 11+ messages in thread
From: Ruben Safir @ 2019-10-03 10:55 UTC (permalink / raw)
  To: kernelnewbies

On 10/3/19 3:00 AM, Greg KH wrote:
> USB4
> spec, and the patches posted to start adding support for that to the
> kernel.  No "math" in there at all other than very simple stuff.
> 
> And no one can say that USB for is not "serious", so I agree with
> Vladis, a deep mathmatical background is not needed for almost all of
> the kernel.  It's just simple C code, nothing to be afraid of.

I wouldn't call that C code basic.  Regardless, showing an example of a
driver that doesn't need math, and it might if you understood the high
level math, and your not aware of it, but predictive branching would
need it.  You can not calculate simple interest efficiently without
calculus.  This repeadely ends up being an issue of "if I don't know it,
I don't need it", which is wrong.  More math helps you every time.  Math
is advanced logic.  I can't tell you how many times I see folks brute
force their way to solutions that they should be using integration.

-- 
So many immigrant groups have swept through our town
that Brooklyn, like Atlantis, reaches mythological
proportions in the mind of the world - RI Safir 1998
http://www.mrbrklyn.com
DRM is THEFT - We are the STAKEHOLDERS - RI Safir 2002

http://www.nylxs.com - Leadership Development in Free Software
http://www.brooklyn-living.com

Being so tracked is for FARM ANIMALS and extermination camps,
but incompatible with living as a free human being. -RI Safir 2013

_______________________________________________
Kernelnewbies mailing list
Kernelnewbies@kernelnewbies.org
https://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: Do I need strong mathematical bases to work in the memory subsystem?
  2019-10-03 10:55           ` Ruben Safir
@ 2019-10-03 16:51             ` Valdis Klētnieks
  2019-10-03 17:21               ` Sahil Gupta
  0 siblings, 1 reply; 11+ messages in thread
From: Valdis Klētnieks @ 2019-10-03 16:51 UTC (permalink / raw)
  To: Ruben Safir; +Cc: kernelnewbies

[-- Attachment #1.1: Type: text/plain, Size: 1852 bytes --]

On Thu, 03 Oct 2019 06:55:50 -0400, Ruben Safir said:

> I wouldn't call that C code basic.  Regardless, showing an example of a
> driver that doesn't need math, and it might if you understood the high
> level math, and your not aware of it, but predictive branching would
> need it.  

See the kernel code that maintains statistical data on likely()/unlikely()
under CONFIG_PROFILE_ANNOTATED_BRANCHES. Seems like "this likely() actually
only triggers 3% of the time" isn't exactly higher math.

There may be some magic going on in the chip hardware - but that's in the
*hardware* and inaccessible to the programmer.  I'll also point out that
speculative execution has *other* problems.....

> You can not calculate simple interest efficiently without calculus. 

Simple interest is *easy*.  Amount * percent.  Done.  It's compound interest
that only sort of needs calculus (and there only to understand the limiting
case) - and even there I doubt any banks actually use calculus, just apply the
iterative approach.

//  yearly interest compounded monthly
for (i=0;i<num_months;i++) { balance += (balance * percent) /12;}

I'd like to see you do it more efficiently using calculus. Especially if you
have to take into account rounding to the nearest penny 36 times for a 3
year loan.  That stuff is why COBOL is still around. :)

> calculus.  This repeadely ends up being an issue of "if I don't know it,
> I don't need it", which is wrong.  More math helps you every time.  Math

Somehow I doubt that the Taniyama-Shimura-Weil conjecture is ever
going to have any relevance inside the kernel.

> is advanced logic.  I can't tell you how many times I see folks brute
> force their way to solutions that they should be using integration.

Can you show an example of where the kernel needs to be using integration?

[-- Attachment #1.2: Type: application/pgp-signature, Size: 832 bytes --]

[-- Attachment #2: Type: text/plain, Size: 170 bytes --]

_______________________________________________
Kernelnewbies mailing list
Kernelnewbies@kernelnewbies.org
https://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: Do I need strong mathematical bases to work in the memory subsystem?
  2019-10-03 16:51             ` Valdis Klētnieks
@ 2019-10-03 17:21               ` Sahil Gupta
  0 siblings, 0 replies; 11+ messages in thread
From: Sahil Gupta @ 2019-10-03 17:21 UTC (permalink / raw)
  To: Valdis Klētnieks; +Cc: Ruben Safir, kernelnewbies

[-- Attachment #1.1: Type: text/plain, Size: 3358 bytes --]

Guys,
It would be more helpful if everybody states their own experience with
respect to kernel development.
It sounds more like a fight now.
:)
The question was originally asked by "CRISTIAN ANDRES".
He is nowhere in the conversation now.
Let's see if he has some specific query with respect to the ram memory
subsystem.

Cheers
Sahil Gupta


[image: Mailtrack]
<https://mailtrack.io?utm_source=gmail&utm_medium=signature&utm_campaign=signaturevirality5&>
Sender
notified by
Mailtrack
<https://mailtrack.io?utm_source=gmail&utm_medium=signature&utm_campaign=signaturevirality5&>
10/03/19,
01:18:52 PM

[image: Mailtrack]
<https://mailtrack.io?utm_source=gmail&utm_medium=signature&utm_campaign=signaturevirality5&>
Sender
notified by
Mailtrack
<https://mailtrack.io?utm_source=gmail&utm_medium=signature&utm_campaign=signaturevirality5&>
10/03/19,
01:19:38 PM

[image: Mailtrack]
<https://mailtrack.io?utm_source=gmail&utm_medium=signature&utm_campaign=signaturevirality5&>
Sender
notified by
Mailtrack
<https://mailtrack.io?utm_source=gmail&utm_medium=signature&utm_campaign=signaturevirality5&>
10/03/19,
01:20:58 PM

On Thu, Oct 3, 2019 at 12:56 PM Valdis Klētnieks <valdis.kletnieks@vt.edu>
wrote:

> On Thu, 03 Oct 2019 06:55:50 -0400, Ruben Safir said:
>
> > I wouldn't call that C code basic.  Regardless, showing an example of a
> > driver that doesn't need math, and it might if you understood the high
> > level math, and your not aware of it, but predictive branching would
> > need it.
>
> See the kernel code that maintains statistical data on likely()/unlikely()
> under CONFIG_PROFILE_ANNOTATED_BRANCHES. Seems like "this likely() actually
> only triggers 3% of the time" isn't exactly higher math.
>
> There may be some magic going on in the chip hardware - but that's in the
> *hardware* and inaccessible to the programmer.  I'll also point out that
> speculative execution has *other* problems.....
>
> > You can not calculate simple interest efficiently without calculus.
>
> Simple interest is *easy*.  Amount * percent.  Done.  It's compound
> interest
> that only sort of needs calculus (and there only to understand the limiting
> case) - and even there I doubt any banks actually use calculus, just apply
> the
> iterative approach.
>
> //  yearly interest compounded monthly
> for (i=0;i<num_months;i++) { balance += (balance * percent) /12;}
>
> I'd like to see you do it more efficiently using calculus. Especially if
> you
> have to take into account rounding to the nearest penny 36 times for a 3
> year loan.  That stuff is why COBOL is still around. :)
>
> > calculus.  This repeadely ends up being an issue of "if I don't know it,
> > I don't need it", which is wrong.  More math helps you every time.  Math
>
> Somehow I doubt that the Taniyama-Shimura-Weil conjecture is ever
> going to have any relevance inside the kernel.
>
> > is advanced logic.  I can't tell you how many times I see folks brute
> > force their way to solutions that they should be using integration.
>
> Can you show an example of where the kernel needs to be using integration?
> _______________________________________________
> Kernelnewbies mailing list
> Kernelnewbies@kernelnewbies.org
> https://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies
>

[-- Attachment #1.2: Type: text/html, Size: 7311 bytes --]

<div dir="ltr">Guys, <div>It would be more helpful if everybody states their own experience with respect to kernel development.<div><div>It sounds more like a fight now. </div><div>:)<br></div>The question was originally asked by &quot;CRISTIAN ANDRES&quot;.<br></div><div>He is nowhere in the conversation now.</div><div>Let&#39;s see if he has some specific query with respect to the ram<span style="background-color:rgb(248,249,250);font-family:arial,sans-serif;white-space:pre-wrap"> memory subsystem.</span></div><div><span style="background-color:rgb(248,249,250);font-family:arial,sans-serif;white-space:pre-wrap"><br></span></div><div><font face="arial, sans-serif"><span style="white-space:pre-wrap;background-color:rgb(248,249,250)">Cheers</span></font></div><div><span style="background-color:rgb(248,249,250);font-family:arial,sans-serif;white-space:pre-wrap">Sahil Gupta</span></div><div><br></div><br><div>
        <table border="0" cellpadding="8" cellspacing="0">
            <tbody><tr>
                <td>
                    <a href="https://mailtrack.io?utm_source=gmail&amp;utm_medium=signature&amp;utm_campaign=signaturevirality5&amp;" style="text-decoration:none" target="_blank">
                        <img src="https://s3.amazonaws.com/mailtrack-signature/sender_notified.gif" alt="Mailtrack" width="32" height="32">
                    </a>
                </td>
                <td>
                    <span style="color:#777">Sender notified by</span> <br>
                    <a href="https://mailtrack.io?utm_source=gmail&amp;utm_medium=signature&amp;utm_campaign=signaturevirality5&amp;" style="color:#4374f7" target="_blank">Mailtrack</a>
                    <span style="color:transparent;font-size:0">10/03/19, 01:18:52 PM</span>
                </td>
                <td>
                    
                </td>
            </tr>
        </tbody></table>
    </div><img width="0" height="0" alt="" style="display:flex" src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7"><br><div>
        <table border="0" cellpadding="8" cellspacing="0">
            <tbody><tr>
                <td>
                    <a href="https://mailtrack.io?utm_source=gmail&amp;utm_medium=signature&amp;utm_campaign=signaturevirality5&amp;" style="text-decoration:none" target="_blank">
                        <img src="https://s3.amazonaws.com/mailtrack-signature/sender_notified.gif" alt="Mailtrack" width="32" height="32">
                    </a>
                </td>
                <td>
                    <span style="color:#777">Sender notified by</span> <br>
                    <a href="https://mailtrack.io?utm_source=gmail&amp;utm_medium=signature&amp;utm_campaign=signaturevirality5&amp;" style="color:#4374f7" target="_blank">Mailtrack</a>
                    <span style="color:transparent;font-size:0">10/03/19, 01:19:38 PM</span>
                </td>
                <td>
                    
                </td>
            </tr>
        </tbody></table>
    </div><img width="0" height="0" alt="" style="display:flex" src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7"><br><div class="mt-signature">
        <table border="0" cellpadding="8" cellspacing="0" style="user-select: none;">
            <tbody><tr>
                <td>
                    <a href="https://mailtrack.io?utm_source=gmail&amp;utm_medium=signature&amp;utm_campaign=signaturevirality5&amp;" class="" style="text-decoration:none">
                        <img src="https://s3.amazonaws.com/mailtrack-signature/sender_notified.gif" alt="Mailtrack" class="" width="32" height="32">
                    </a>
                </td>
                <td>
                    <span style="color:#777">Sender notified by</span> <br>
                    <a href="https://mailtrack.io?utm_source=gmail&amp;utm_medium=signature&amp;utm_campaign=signaturevirality5&amp;" class="mt-install" style="color:#4374f7">Mailtrack</a>
                    <span style="color:transparent;font-size:0">10/03/19, 01:20:58 PM</span>
                </td>
                <td>
                    
                </td>
            </tr>
        </tbody></table>
    </div></div><img width="0" height="0" class="mailtrack-img" alt="" style="display:flex" src="https://mailtrack.io/trace/mail/02aa1089e4aaf3a50d2521a73be9f970b1605926.png?u=1052462"></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Thu, Oct 3, 2019 at 12:56 PM Valdis Klētnieks &lt;<a href="mailto:valdis.kletnieks@vt.edu" target="_blank">valdis.kletnieks@vt.edu</a>&gt; wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">On Thu, 03 Oct 2019 06:55:50 -0400, Ruben Safir said:<br>
<br>
&gt; I wouldn&#39;t call that C code basic.  Regardless, showing an example of a<br>
&gt; driver that doesn&#39;t need math, and it might if you understood the high<br>
&gt; level math, and your not aware of it, but predictive branching would<br>
&gt; need it.  <br>
<br>
See the kernel code that maintains statistical data on likely()/unlikely()<br>
under CONFIG_PROFILE_ANNOTATED_BRANCHES. Seems like &quot;this likely() actually<br>
only triggers 3% of the time&quot; isn&#39;t exactly higher math.<br>
<br>
There may be some magic going on in the chip hardware - but that&#39;s in the<br>
*hardware* and inaccessible to the programmer.  I&#39;ll also point out that<br>
speculative execution has *other* problems.....<br>
<br>
&gt; You can not calculate simple interest efficiently without calculus. <br>
<br>
Simple interest is *easy*.  Amount * percent.  Done.  It&#39;s compound interest<br>
that only sort of needs calculus (and there only to understand the limiting<br>
case) - and even there I doubt any banks actually use calculus, just apply the<br>
iterative approach.<br>
<br>
//  yearly interest compounded monthly<br>
for (i=0;i&lt;num_months;i++) { balance += (balance * percent) /12;}<br>
<br>
I&#39;d like to see you do it more efficiently using calculus. Especially if you<br>
have to take into account rounding to the nearest penny 36 times for a 3<br>
year loan.  That stuff is why COBOL is still around. :)<br>
<br>
&gt; calculus.  This repeadely ends up being an issue of &quot;if I don&#39;t know it,<br>
&gt; I don&#39;t need it&quot;, which is wrong.  More math helps you every time.  Math<br>
<br>
Somehow I doubt that the Taniyama-Shimura-Weil conjecture is ever<br>
going to have any relevance inside the kernel.<br>
<br>
&gt; is advanced logic.  I can&#39;t tell you how many times I see folks brute<br>
&gt; force their way to solutions that they should be using integration.<br>
<br>
Can you show an example of where the kernel needs to be using integration?<br>
_______________________________________________<br>
Kernelnewbies mailing list<br>
<a href="mailto:Kernelnewbies@kernelnewbies.org" target="_blank">Kernelnewbies@kernelnewbies.org</a><br>
<a href="https://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies" rel="noreferrer" target="_blank">https://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies</a><br>
</blockquote></div>

[-- Attachment #2: Type: text/plain, Size: 170 bytes --]

_______________________________________________
Kernelnewbies mailing list
Kernelnewbies@kernelnewbies.org
https://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: Do I need strong mathematical bases to work in the memory subsystem?
  2019-10-03  3:42       ` Ruben Safir
  2019-10-03  7:00         ` Greg KH
@ 2019-10-06  1:49         ` Grant Taylor
  2019-10-16 15:18         ` Cindy Sue Causey
  2 siblings, 0 replies; 11+ messages in thread
From: Grant Taylor @ 2019-10-06  1:49 UTC (permalink / raw)
  To: kernelnewbies

[-- Attachment #1.1: Type: text/plain, Size: 1172 bytes --]

On 10/2/19 9:42 PM, Ruben Safir wrote:
> General plumbing is not needed, but predictive trees, and crypto 
> certainly do and some hardware problems need calc, or even integration.

Those sound like hyper specific things and decidedly specif subsets of 
the kernel.

I believe that there is a LOT of room for kernel development that does 
not need advanced mathematics.

> The harder the job, the more math is needed.

math ≠ advanced mathematics

I concede that quite a bit of math is used in the kernel.  But advanced 
mathematics is a ⊂ of mathematics.

> Maybe, but I don't think so.  And the hardware is getting more exotic.

IMHO the eccentricity of the hardware has no direct correlation to the 
complexity of the device driver controlling said hardware.

Driving an external serial attached modem does not require advanced 
mathematics.  Creating a software based modem, be it kernel space and / 
or user space, does require advanced mathematics.  Notice how the 
simpler hardware requires more math conversely the more complex hardware 
does more of the work, thus needing simpler drivers.



-- 
Grant. . . .
unix || die



[-- Attachment #1.2: S/MIME Cryptographic Signature --]
[-- Type: application/pkcs7-signature, Size: 4008 bytes --]

[-- Attachment #2: Type: text/plain, Size: 170 bytes --]

_______________________________________________
Kernelnewbies mailing list
Kernelnewbies@kernelnewbies.org
https://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: Do I need strong mathematical bases to work in the memory subsystem?
  2019-10-03  3:42       ` Ruben Safir
  2019-10-03  7:00         ` Greg KH
  2019-10-06  1:49         ` Grant Taylor
@ 2019-10-16 15:18         ` Cindy Sue Causey
  2 siblings, 0 replies; 11+ messages in thread
From: Cindy Sue Causey @ 2019-10-16 15:18 UTC (permalink / raw)
  To: Kernel Newbies

On 10/2/19, Ruben Safir <ruben@mrbrklyn.com> wrote:
> On 10/2/19 11:35 PM, Valdis Klētnieks wrote:
>> On Wed, 02 Oct 2019 21:47:42 -0400, Ruben Safir said:
>>
>> I'm willing to bet that there's very few PhD's in CS listed in
>> MAINTAINERS.  And
>> those that are, are probably coincidental...
>
> I can't testify to that, but there are ton of Master Degree coders and a
> lot of mathamaticians.


Speaking from my own set of Shoes, some part of it is about being
attracted to something with discernible patterns.. predictable
patterns.. I don't know, words aren't quite pulling together this
morning, but..

Math and computers..

Maybe "logical" is the word I'm looking for.. If one has followed a
[building block] type of learning path for either Math or computers,
they're both actually... fun because they *can be* predictably
logical..

That is, if one has taken the logical path of learning either subject
via a [building block] type of education rather than trying to jump
off into the very deepest end first. *shakes head at self*

PS Linux From Scratch.. LFS.. I WISH I had found that first 20 years
ago before all others. It would have made a lot less sense (to me) in
that order, but all others after that would have made A LOT MORE sense
in its shadow. I think I learned about LFS from Kernel Newbies, from a
suggested further readings list or something, now that i think about
it, too. #ThankYou! :)

Cindy :)
-- 
* runs with birdseed *

_______________________________________________
Kernelnewbies mailing list
Kernelnewbies@kernelnewbies.org
https://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies

^ permalink raw reply	[flat|nested] 11+ messages in thread

end of thread, back to index

Thread overview: 11+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-09-29 22:48 Do I need strong mathematical bases to work in the memory subsystem? CRISTIAN ANDRES VARGAS GONZALEZ
2019-09-30  5:06 ` Valdis Klētnieks
2019-10-03  1:47   ` Ruben Safir
2019-10-03  3:35     ` Valdis Klētnieks
2019-10-03  3:42       ` Ruben Safir
2019-10-03  7:00         ` Greg KH
2019-10-03 10:55           ` Ruben Safir
2019-10-03 16:51             ` Valdis Klētnieks
2019-10-03 17:21               ` Sahil Gupta
2019-10-06  1:49         ` Grant Taylor
2019-10-16 15:18         ` Cindy Sue Causey

Kernel Newbies archive on lore.kernel.org

Archives are clonable:
	git clone --mirror https://lore.kernel.org/kernelnewbies/0 kernelnewbies/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 kernelnewbies kernelnewbies/ https://lore.kernel.org/kernelnewbies \
		kernelnewbies@kernelnewbies.org
	public-inbox-index kernelnewbies

Example config snippet for mirrors

Newsgroup available over NNTP:
	nntp://nntp.lore.kernel.org/org.kernelnewbies.kernelnewbies


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git