Thread: Upgrading to the new processors (more of a software ?)

  1. #76
    Disrupting the universe Mad_guy's Avatar
    Join Date
    Jun 2005
    Posts
    258
    More memory means less paging. Therefore I prioritize more memory.
    Paging is a PITA, but high bandwidth and low latency are excruciatingly important in some instances when memory quickly becomes the bottleneck (and it becomes the limiting factor a lot quicker than CPU time these days, when factors like I/O and networking aren't taken into consideration. This is one of the reasons that the Cell architecture abandoned caches in favor of SPE-local 256kb data stores. Controlling/predicting the effects of cache locality can be very hard, but the effects on performance are HUGE (think 50x speedups on a loop because it fits in your L1i cache) so they eschewed that and instead make you move data across a high-speed bus by yourself, so you have more control over the effects of memory latency/speed.)

    Not to say more memory is bad, but higher bandwidth and a big L1 cache can make all the difference for certain use cases. :]
    operating systems: mac os 10.6, debian 5.0, windows 7
    editor: back to emacs because it's more awesomer!!
    version control: git

    website: http://0xff.ath.cx/~as/

  2. #77
    Registered User jeffcobb's Avatar
    Join Date
    Dec 2009
    Location
    Henderson, NV
    Posts
    875
    Quote Originally Posted by Mad_guy View Post
    Paging is a PITA, but high bandwidth and low latency are excruciatingly important in some instances when memory quickly becomes the bottleneck (and it becomes the limiting factor a lot quicker than CPU time these days, when factors like I/O and networking aren't taken into consideration. This is one of the reasons that the Cell architecture abandoned caches in favor of SPE-local 256kb data stores. Controlling/predicting the effects of cache locality can be very hard, but the effects on performance are HUGE (think 50x speedups on a loop because it fits in your L1i cache) so they eschewed that and instead make you move data across a high-speed bus by yourself, so you have more control over the effects of memory latency/speed.)

    Not to say more memory is bad, but higher bandwidth and a big L1 cache can make all the difference for certain use cases. :]
    <sniff> I miss coding on Cell. It seriously rocked. When properly coded-for, it literally blew everything out of the water. For example the protein folding project at Stanford I believe, CellBE accounted for less than 27% of the participating machines yet submitted something like 72% of the actual work...It was not trivial to code for but the results were worth it.
    C/C++ Environment: GNU CC/Emacs
    Make system: CMake
    Debuggers: Valgrind/GDB

  3. #78
    C++まいる!Cをこわせ!
    Join Date
    Oct 2007
    Location
    Inside my computer
    Posts
    24,654
    Quote Originally Posted by Mad_guy View Post
    Paging is a PITA, but high bandwidth and low latency are excruciatingly important in some instances when memory quickly becomes the bottleneck (and it becomes the limiting factor a lot quicker than CPU time these days, when factors like I/O and networking aren't taken into consideration. This is one of the reasons that the Cell architecture abandoned caches in favor of SPE-local 256kb data stores. Controlling/predicting the effects of cache locality can be very hard, but the effects on performance are HUGE (think 50x speedups on a loop because it fits in your L1i cache) so they eschewed that and instead make you move data across a high-speed bus by yourself, so you have more control over the effects of memory latency/speed.)

    Not to say more memory is bad, but higher bandwidth and a big L1 cache can make all the difference for certain use cases. :]
    Absolutely. I long for the days when we can eliminate the difference between memory speed and cpu speed and IO speed. But that's not the case today.
    Unfortunately, those high speed memories are too expensive. I go for the most economic memory. Of course, if there is memory with higher speed with only a marginally higher price, I go for it.
    Generally, I feel that more memory outweights the need for fast memory and I certainly don't like overclocking. It makes everything power hungry, and that's a big minus.

    Quote Originally Posted by jeffcobb View Post
    <sniff> I miss coding on Cell. It seriously rocked. When properly coded-for, it literally blew everything out of the water. For example the protein folding project at Stanford I believe, CellBE accounted for less than 27% of the participating machines yet submitted something like 72% of the actual work...It was not trivial to code for but the results were worth it.
    Let's build a perfect architecture in the future that's not a PITA to code work, shall we?
    Quote Originally Posted by Adak View Post
    io.h certainly IS included in some modern compilers. It is no longer part of the standard for C, but it is nevertheless, included in the very latest Pelles C versions.
    Quote Originally Posted by Salem View Post
    You mean it's included as a crutch to help ancient programmers limp along without them having to relearn too much.

    Outside of your DOS world, your header file is meaningless.

  4. #79
    Registered User jeffcobb's Avatar
    Join Date
    Dec 2009
    Location
    Henderson, NV
    Posts
    875
    Quote Originally Posted by Elysia View Post
    Let's build a perfect architecture in the future that's not a PITA to code work, shall we?
    Well a big part of it is getting out of the Intel mindset which is what 98% of us know *well*. It is going to call for a change in thinking to be able to code for new architectures. I honestly feel that it is going to have to be part hardware change, part software change (tools like Intels Thread Building Blocks only for a non-Intel architecture) and part *us* with a change of thinking. If you are waiting for something to just automatically make your code that was crafted with a single-thread mindset to just magically become smart about multiple cores, you will have a long and disappointing wait. Writing *good* multiprocess code is not a trivial task but it is one that brings great rewards. However as long as we are stuck on Intel and Intel is stuck on the current architecture, we are all just that: stuck.
    C/C++ Environment: GNU CC/Emacs
    Make system: CMake
    Debuggers: Valgrind/GDB

  5. #80
    spurious conceit MK27's Avatar
    Join Date
    Jul 2008
    Location
    segmentation fault
    Posts
    8,300
    Quote Originally Posted by jeffcobb View Post
    However as long as we are stuck on Intel and Intel is stuck on the current architecture, we are all just that: stuck.
    I would guess that considering what it takes to design and manufacture some new architecture, Intel would be a prime candidate to do it.

    Maybe that is what you mean by "unsticking" Intel. That might be hard since they do not have enough competition to motivate them.

    BUT (@Elysia) your position plays into Intel's current strategy, which is to get people buying new, slightly better processors on a regular basis. Until that stops, there is no reason for them to change this strategy. Why put a ton of R&D into something when people will be buying the product and singing it's praises regardless?
    Last edited by MK27; 03-05-2010 at 03:32 PM.
    C programming resources:
    GNU C Function and Macro Index -- glibc reference manual
    The C Book -- nice online learner guide
    Current ISO draft standard
    CCAN -- new CPAN like open source library repository
    3 (different) GNU debugger tutorials: #1 -- #2 -- #3
    cpwiki -- our wiki on sourceforge

  6. #81
    C++まいる!Cをこわせ!
    Join Date
    Oct 2007
    Location
    Inside my computer
    Posts
    24,654
    Quote Originally Posted by MK27 View Post
    Maybe that is what you mean by "unsticking" Intel. That might be hard since they do not have enough competition to motivate them.
    That's AMD's job. That is, if they can pull the rabbit out of the hat soon.

    BUT (@Elysia) your position plays into Intel's current strategy, which is to get people buying new, slightly better processors on a regular basis. Until that stops, there is no reason for them to change this strategy. Why put a ton of R&D into something when people will be buying the product and singing it's praises regardless?
    Just buy AMD's processors instead. It's the next best thing. You can't keep using your old processor forever.

    Btw, I just recently had a 2.2 GB commit of my laptop. I'd say this is normal because of they way I tend to use computers.
    Closing two explorer windows, some zoom player windows and restarting Firefox seems to have cut down on the usage by 700 MB.
    But I like lots of windows. And that is why I love lots of memory.
    (Not doing video encoding atm.)
    Quote Originally Posted by Adak View Post
    io.h certainly IS included in some modern compilers. It is no longer part of the standard for C, but it is nevertheless, included in the very latest Pelles C versions.
    Quote Originally Posted by Salem View Post
    You mean it's included as a crutch to help ancient programmers limp along without them having to relearn too much.

    Outside of your DOS world, your header file is meaningless.

  7. #82
    (?<!re)tired Mario F.'s Avatar
    Join Date
    May 2006
    Location
    Ireland
    Posts
    8,446
    Quote Originally Posted by Elysia View Post
    You can't keep using your old processor forever.
    Excuse me, but who are you?
    Originally Posted by brewbuck:
    Reimplementing a large system in another language to get a 25% performance boost is nonsense. It would be cheaper to just get a computer which is 25% faster.

  8. #83
    C++まいる!Cをこわせ!
    Join Date
    Oct 2007
    Location
    Inside my computer
    Posts
    24,654
    I'm not saying you should or must upgrade. I'm saying that, at some point, you'll probably more or less be forced to due to different factors. Perhaps the old processor stops working. Perhaps you need to work with some software that isn't supported on your processor. Or perhaps the software is just too slow.
    Do you honestly think you'll be using that Pentium processor 50 years from now?
    Quote Originally Posted by Adak View Post
    io.h certainly IS included in some modern compilers. It is no longer part of the standard for C, but it is nevertheless, included in the very latest Pelles C versions.
    Quote Originally Posted by Salem View Post
    You mean it's included as a crutch to help ancient programmers limp along without them having to relearn too much.

    Outside of your DOS world, your header file is meaningless.

  9. #84
    (?<!re)tired Mario F.'s Avatar
    Join Date
    May 2006
    Location
    Ireland
    Posts
    8,446
    There you are again, doing the same thing. Using common places as a means to fire away your ideology, and when confronted with it, going back to the obvious validity of the common place and argue you only meant to say... the common place. What offends my intelligence is not the fact you use this trick on a constant basis. It is the fact you actually think you can fool anyone.

    Just because no one will be using a Pentium processor in 50 years, doesn't mean no one should be using it today and in 10 years from today. They are and they will. The P4 you so much hate, and single-core processors in general are here to stay for quite some time and will remain useful on many areas, from domestic use, to corporate and governmental use. And it's not your consumer-happy ignorance and asinine power-hungry requirements that will change it.

    BTW, AMD processors may not exist in 50 years, so your advise is rubbish.
    Originally Posted by brewbuck:
    Reimplementing a large system in another language to get a 25% performance boost is nonsense. It would be cheaper to just get a computer which is 25% faster.

  10. #85
    C++まいる!Cをこわせ!
    Join Date
    Oct 2007
    Location
    Inside my computer
    Posts
    24,654
    Does it look like I want to change what you have or do?!
    In fact, I don't care what you do or have.
    I have stated again and again that I don't like P4 or Atom, but correct me if I'm wrong, I have never stated that you should upgrade or change.
    Whatever. If you don't like my ideals, then ignore them. Go away. Shoo.
    I will not try to convert anyone, because, I seriously don't care what you do or use.
    Quote Originally Posted by Adak View Post
    io.h certainly IS included in some modern compilers. It is no longer part of the standard for C, but it is nevertheless, included in the very latest Pelles C versions.
    Quote Originally Posted by Salem View Post
    You mean it's included as a crutch to help ancient programmers limp along without them having to relearn too much.

    Outside of your DOS world, your header file is meaningless.

  11. #86
    spurious conceit MK27's Avatar
    Join Date
    Jul 2008
    Location
    segmentation fault
    Posts
    8,300
    Quote Originally Posted by Elysia View Post
    That's AMD's job. That is, if they can pull the rabbit out of the hat soon.
    Hold your breath.

    Btw, I just recently had a 2.2 GB commit of my laptop. I'd say this is normal because of they way I tend to use computers.
    Closing two explorer windows, some zoom player windows and restarting Firefox seems to have cut down on the usage by 700 MB.
    But I like lots of windows. And that is why I love lots of memory.
    I could have guessed that part -- windows is a complete memory pig. I don't watch video on my computer (other than online) but after boot I'm sitting at about 150mb. With firefox, an MUA, 1/2 dozen terminals with apps and connections running, pigeon, gvim, working in GIMP (a la photoshop) a GUI debugger, file browser, and various little other things I'm still using <700mb.
    C programming resources:
    GNU C Function and Macro Index -- glibc reference manual
    The C Book -- nice online learner guide
    Current ISO draft standard
    CCAN -- new CPAN like open source library repository
    3 (different) GNU debugger tutorials: #1 -- #2 -- #3
    cpwiki -- our wiki on sourceforge

  12. #87
    C++まいる!Cをこわせ!
    Join Date
    Oct 2007
    Location
    Inside my computer
    Posts
    24,654
    Are you looking at commit or memory used? It's impossible to have that little commit after using all that stuff.
    Quote Originally Posted by Adak View Post
    io.h certainly IS included in some modern compilers. It is no longer part of the standard for C, but it is nevertheless, included in the very latest Pelles C versions.
    Quote Originally Posted by Salem View Post
    You mean it's included as a crutch to help ancient programmers limp along without them having to relearn too much.

    Outside of your DOS world, your header file is meaningless.

  13. #88
    Reverse Engineer maxorator's Avatar
    Join Date
    Aug 2005
    Location
    Estonia
    Posts
    2,318
    Quote Originally Posted by MK27 View Post
    I could have guessed that part -- windows is a complete memory pig. I don't watch video on my computer (other than online) but after boot I'm sitting at about 150mb. With firefox, an MUA, 1/2 dozen terminals with apps and connections running, pigeon, gvim, working in GIMP (a la photoshop) a GUI debugger, file browser, and various little other things I'm still using <700mb.
    That doesn't sound like intensive usage at all. Considering that Firefox on its own doesn't take much memory, Linux has a lightweight file browser, GIMP is many times less complex than Photoshop, gvim can barely be considered a GUI application, Pidgin is a pretty simple application too.

    In Windows I often have Firefox opened with many tabs, Photoshop with several large images opened, 3xVisual Studio, 2xIDA Debugger (big executables so they both take several hundred megabytes of RAM), 2xAcrobat Reader, Notepad++ with around 10-20 files opened, around 2-4 Explorer windows, Pidgin, IRC client, sometimes a music player or an FTP client and occasionally I launch games on top of all that. And I'm on x64 W7. I haven't checked how much memory it all uses, but I'm pretty sure the memory usage has nothing to do with Windows being a pig.
    "The Internet treats censorship as damage and routes around it." - John Gilmore

  14. #89
    spurious conceit MK27's Avatar
    Join Date
    Jul 2008
    Location
    segmentation fault
    Posts
    8,300
    Yeah, my meter doesn't include what's cached, which can add 50-100% to that number.
    C programming resources:
    GNU C Function and Macro Index -- glibc reference manual
    The C Book -- nice online learner guide
    Current ISO draft standard
    CCAN -- new CPAN like open source library repository
    3 (different) GNU debugger tutorials: #1 -- #2 -- #3
    cpwiki -- our wiki on sourceforge

  15. #90
    spurious conceit MK27's Avatar
    Join Date
    Jul 2008
    Location
    segmentation fault
    Posts
    8,300
    Quote Originally Posted by maxorator View Post
    That doesn't sound like intensive usage at all.
    I suppose if you want count "intensive usage" as leaving all that open, then starting a video on one desk and leaving it running while you play a game and maybe compile a kernel in the background.

    In that case, you are sort of hair-brained to consider this a need to increase your memory or to complain that a processor isn't good enough.

    If you are serving a network where this would actually serve a purpose, okay.
    C programming resources:
    GNU C Function and Macro Index -- glibc reference manual
    The C Book -- nice online learner guide
    Current ISO draft standard
    CCAN -- new CPAN like open source library repository
    3 (different) GNU debugger tutorials: #1 -- #2 -- #3
    cpwiki -- our wiki on sourceforge

Popular pages Recent additions subscribe to a feed

Similar Threads

  1. Software Development. Other costs.
    By Mario F. in forum General Discussions
    Replies: 5
    Last Post: 10-24-2009, 11:34 PM
  2. Software Design/Test - Redmond, WA
    By IRVolt in forum Projects and Job Recruitment
    Replies: 2
    Last Post: 06-11-2008, 10:26 AM
  3. Why C Matters
    By DavidP in forum A Brief History of Cprogramming.com
    Replies: 136
    Last Post: 01-16-2008, 09:09 AM
  4. Adding trial period to software
    By BobS0327 in forum C Programming
    Replies: 17
    Last Post: 01-03-2006, 02:13 PM