Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.lang.c++ > #13667
| From | 88888 Dihedral <dihedral88888@googlemail.com> |
|---|---|
| Newsgroups | comp.lang.c++ |
| Subject | Re: Leigh's GUI [OT] |
| Date | 2012-01-30 10:46 -0800 |
| Organization | http://groups.google.com |
| Message-ID | <30897790.954.1327949171499.JavaMail.geo-discussion-forums@prfq33> (permalink) |
| References | (2 earlier) <jfvebq$17eb$1@adenine.netfront.net> <11915561.372.1327786541879.JavaMail.geo-discussion-forums@prlv30> <9ojb5mF8j0U12@mid.individual.net> <25265839.369.1327790783190.JavaMail.geo-discussion-forums@prhp24> <a8f40369-f0f6-4fcb-a053-f838bbe6f780@b23g2000yqn.googlegroups.com> |
在 2012年1月30日星期一UTC+8下午4时55分39秒,hanukas写道: > On Jan 29, 12:46 am, 88888 Dihedral <dihedr...@googlemail.com> > wrote: > > 在 2012年1月29日星期日UTC+8上午6时29分10秒,Ian Collins写道: > > > > > On 01/29/12 10:35 AM, 88888 Dihedral wrote: > > > > > > The roadmap is WIMAX to LTE before 2020 to relpace the cheap old GSM. > > > > In this part C++ is not very useful for those DSP routines in mobile systems. > > > > > The last mobile DSP project I was involved in used C++. > > > > > -- > > > Ian Collins > > > > I'll use pointers to structures for any heavy computing jobs in DSP > > in the C way. > > > > Even the v-pointer to the v-table for each element in 2D or 3D are > > slowingdown the process. > > Of course. Same can be said about redundant computation, for example: > > process_sample(x, y, ..); > --> > *(address + offset) > ++offset > --> > ~= address[offset++] > > - avoid unnecessary method/function calls > > - don't compute stride*y for each sample, you KNOW the address of next > sample when process samples in predictable order > > - if you process samples in predictable order, you can also predict > the access pattern from cache's point of view; for 2D data, tile it > for better local coherency and minimize cache misses > > - can you reduce ALU cost with data-level parallelism? > > - can you reduce overhead with process level parallelism? > > .. and other interesting architectural decisions that you can make. C/C > ++ is irrelevant argument when the programmer is proficient. The C++ > constructs allow more readable code with no performance impact. No one > is suggesting you need to invoke virtual c++ method call for each > processed sample, except you.. why are you using that as argument > against C++ if you are a very good programmer? > > > > Of course a lot people don't do digtal image or video processing for > > a window convolution larger than 16X16. > > I do something where we have to process over 100,000,000 samples per > second, 1-2 million samples at 60 fps. It's called real-time > rendering. And we have to do that with only few watts, there isn't > much room to waste power on redundant computation. > > > > Just implement a Wiener filter of a simple model for an image of a high priced > > digital camcorder for hand shakinking elimanation of motion blurred sources, > > then the C++ funny way is not very useful at all. > > The C++ funny way, whatever it is that you mean by that probably > isn't. But there is nothing in C (!) that it could do better. It comes > down to knowing what you are doing, sounds to me that you only know > how to write poorly performing C++ code so I would say that you're not > the best possible go-to guy for advice. No offence, it just comes out > that way. What I have emphasized is that C++ is better in a high level of controls of complex components organized as easy to use objects in a library or a package to be used by others, but it should not be used for heavy computing in the low level that needs to deal with hardware to avoid unnecessary overheads in repeated basic operations.
Back to comp.lang.c++ | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
Leigh's GUI [OT] "Paul" <pchrist<nospam>or@yahoo.co.uk> - 2012-01-27 22:23 +0000
Re: Leigh's GUI [OT] Leigh Johnston <leigh@i42.co.uk> - 2012-01-27 22:29 +0000
Re: Leigh's GUI [OT] "Paul" <pchrist<nospam>or@yahoo.co.uk> - 2012-01-28 00:09 +0000
Re: Leigh's GUI [OT] Leigh Johnston <leigh@i42.co.uk> - 2012-01-28 13:01 +0000
Re: Leigh's GUI [OT] "Paul" <pchrist<nospam>or@yahoo.co.uk> - 2012-01-28 15:26 +0000
Re: Leigh's GUI [OT] Leigh Johnston <leigh@i42.co.uk> - 2012-01-28 16:27 +0000
Re: Leigh's GUI [OT] "Paul" <pchrist<nospam>or@yahoo.co.uk> - 2012-01-28 16:37 +0000
Re: Leigh's GUI [OT] Leigh Johnston <leigh@i42.co.uk> - 2012-01-28 19:16 +0000
Re: Leigh's GUI [OT] 88888 Dihedral <dihedral88888@googlemail.com> - 2012-01-28 12:52 -0800
Re: Leigh's GUI [OT] "Paul" <pchrist<nospam>or@yahoo.co.uk> - 2012-01-28 22:26 +0000
Re: Leigh's GUI [OT] Thomas Boell <tboell@domain.invalid> - 2012-02-01 13:57 +0100
Re: Leigh's GUI [OT] 88888 Dihedral <dihedral88888@googlemail.com> - 2012-01-28 13:35 -0800
Re: Leigh's GUI [OT] Ian Collins <ian-news@hotmail.com> - 2012-01-29 11:29 +1300
Re: Leigh's GUI [OT] 88888 Dihedral <dihedral88888@googlemail.com> - 2012-01-28 14:46 -0800
Re: Leigh's GUI [OT] Ian Collins <ian-news@hotmail.com> - 2012-01-29 12:28 +1300
Re: Leigh's GUI [OT] 88888 Dihedral <dihedral88888@googlemail.com> - 2012-01-29 05:07 -0800
Re: Leigh's GUI [OT] hanukas <jukka@liimatta.org> - 2012-01-30 00:55 -0800
Re: Leigh's GUI [OT] 88888 Dihedral <dihedral88888@googlemail.com> - 2012-01-30 10:46 -0800
Re: Leigh's GUI [OT] hanukas <jukka@liimatta.org> - 2012-01-30 14:54 -0800
Re: Leigh's GUI [OT] Ian Collins <ian-news@hotmail.com> - 2012-01-31 18:21 +1300
Re: Leigh's GUI [OT] 88888 Dihedral <dihedral88888@googlemail.com> - 2012-01-29 16:13 -0800
csiph-web