View Full Version : Looking for C developpers
SurferIX
03-23-2008, 03:01 PM
Hi,
I hope you'll understand my situation and won't blame me for what I'm asking.
Here's the problem :
- I'm a workaholic.
- I'm working 14 hours a day and one year ago a man hired me. I'm very well paid, but working 8 hours a day is not enough for me.
- Thus I've started to work for a project of my own.
- My ex classmate joined me, and installed me a huge PC with hand compiled & optimized Linux (200 % faster than classical distros), and I wrote an Apache module? This give a page that is displayed almost 352 % quicker than the same page in php (no kidding). But there's one problem : it takes ages to develop on my own.
- My idea was really good but I'm running out of time (even though I'm working that much) and I don't have a lot of money.
That's why I've come up with one solution : to hire 1 (up to 3) guys "off shore" (I don't know if the expression is appropriate but we say that in French : "off shore") to work for me. I'm asking for any suggestion where I may take a look, to be able to speed up the development process. I've got 6 months to the least of development and I'm in a hurry.
Any kind of idea would be good to me.
You can mail me directly if you've got an interesting idea.
Thanks again, and sorry for my English which is perfectible.
with hand compiled & optimized Linux (200 % faster than classical distros)
Not Gentoo by any chance? 200% faster? I have a hard time believing that . . . what is your basis for that? You do realize that "200% faster" means 300% of the actual speed, right?
Have you considered asking on some Apache forums? You'll probably get more interest there.
What language is this using? Presumably it's C or C++, since you posted it here, but it might make a difference in who is interested.
What does the module do? And how can it be 352% faster? Is that a fair comparison (e.g., are you comparing it to something that does the same thing)?
abachler
03-26-2008, 02:20 PM
He is in a hurry, so he wants it fast.
He doesnt have a lto of money, so he wants it cheap.
OK, those are your two, I can provide a solution today for free.
Fast, Cheap, Works, pick two.
SlyMaelstrom
03-26-2008, 02:47 PM
He doesnt have a lto of money, so he wants it cheap.He is not making it cheap by reducing the quality of his laborers, but rather by searching for labor in a cheaper market. Honestly, I'm sure there are significantly more talented programmers coming out of IIT in India that would work for much less than your average programmer in France. That said, the two he would be choosing in your selection is "fast" and "works". The real question is the cheapest labor market cheap enough for him to dedicate enough resources towards his project to product a working product by his deadline? Something not easily answered without knowing the answers to the questions dwks made. ... but then that always sparks the question of "How often do programmers actually produce a 100% complete product by deadline, anyway?"
abachler
03-26-2008, 03:27 PM
Fast, cheap, works, pick two. If he is tryig to get it cheap then that is a defacto choice. Either he must take the time to find cheap labor that can make it work or he must not take the time, he cannot do both.
SurferIX
04-16-2008, 04:01 PM
My "associate" quit. We sold the two computers (batman and robin (we wanted kindof stupid nicks)) to my boss. With the money I got I bought another PC, more powerful (quadcore 8Gb RAM and so on) and my "associate" feels kindof embarassed so he helped me to install another hand-compiled Debian version. It takes 2 min 30 s to compile the kernel. It took almost 8 minutes on the 2 other ones.
Anyway a French student is willing to help me to develop the project and he kind of like it (last time I asked him at 0:15 he sent the final code at 2:14 !).
I really hop I'll earn some money to pay him because he deserves it.
Thanks for the feedback and for the suggestion about "asking to an Apache newsgroup" (BTW got a link ?).
JFonseka
04-17-2008, 02:13 AM
I'm having a hard time believing these percentages. But I don't know much about these things.
matsp
04-17-2008, 02:35 AM
I'm having a hard time believing these percentages. But I don't know much about these things.
I suspect that you can get improvements like that if you concentrate on specific "low-hanging fruit", but I'm sure that ALL OF LINUX is not 200% faster - only some very specific functions (that probably weren't previously targeted because they are of low importance).
--
Mats
SurferIX
04-17-2008, 01:38 PM
The bottleneck is... MySQL actually.
Tests between php and our own Apache modules give almost the same results because they're both waiting for MySQL.... but without MySQL acces, only string functions and other stuff are most of the time more than 300 % faster than php. Moreover, using the apr library makes the overall stuff quicker than the standard C library.
Anyway, we're looking forward to use BerkeleyDB.
The performance test we use is Apache-Test flood utility :
http://httpd.apache.org/test/flood/
Regards,
Olivier
Jaqui
04-20-2008, 03:05 PM
I suspect that you can get improvements like that if you concentrate on specific "low-hanging fruit", but I'm sure that ALL OF LINUX is not 200% faster - only some very specific functions (that probably weren't previously targeted because they are of low importance).
That would really depend on what options were used. if your xorg implementation only has the driver for your specific graphics card, instead of as most distros do and compile in drivers for every card, then even an x session will be noticeably faster. maybe not 200%, but faster.
Though tuning the system to that level requires using a from source only building process, such as LFS or DIY.
I stopped putting any java support in my linux systems, since with sun's jre installed there was a humanly noticeable decrease in system performance. [AMD AM2 3800+ with 1 GB 533 MHz DDR2 ]
matsp
04-20-2008, 03:19 PM
That would really depend on what options were used. if your xorg implementation only has the driver for your specific graphics card, instead of as most distros do and compile in drivers for every card, then even an x session will be noticeably faster. maybe not 200%, but faster.
Have you actually verified this with a suitable benchmark? And where is it being slower (profiling)? I would expect that the XFree86 organization would be very interested in suggestions for improvement here.
I'm not deeply familiar with X-windows, but I'm fairly convinced that support for multiple drivers is implemented primarily through function pointers, so there should be very little overhead caused by additional unused drivers. There may be workarounds in special areas that "disappear" if you select only one type of graphics card, rather than a generic build, but I expect most of those to be based on the actual graphics card being used, rather than "used always". Either that, or X-windows is more b0rken than I thought.
Though tuning the system to that level requires using a from source only building process, such as LFS or DIY.
I stopped putting any java support in my linux systems, since with sun's jre installed there was a humanly noticeable decrease in system performance. [AMD AM2 3800+ with 1 GB 533 MHz DDR2 ]
Doing what? I have run systems similar to yours with jre, and I haven't seen it in any profiling data - so what are you doing when it's running slower?
How about using oprofile to measure the difference, and point the code out to someone who can fix it, if it's that noticeable - assuming of course you are not using Java-code to do something, in which case I expect jre to appear somewhere on the profile.
--
Mats
Jaqui
04-22-2008, 01:35 AM
Mats,
http://cboard.cprogramming.com/showthread.php?p=744590#post744590
since this is off topic for the thread.
medievalelks
04-22-2008, 07:33 PM
He is not making it cheap by reducing the quality of his laborers, but rather by searching for labor in a cheaper market. Honestly, I'm sure there are significantly more talented programmers coming out of IIT in India that would work for much less than your average programmer in France.
Really? If they're anything like the outsourced programmers from India that I've worked with for the past two years, things must be *really* bad in France.
SurferIX
04-24-2008, 03:07 PM
I don't know what makes people think French are dumb. They're cheeky, it's a fact. But they're not dumb.
I've stopped thinking about outsourcing : I've talked with 5 guys coming from 5 different French companies (2 big companies and 3 consultants that have worked to outsource 9 projects including projects for a bank (Credit Agricole not to say it)) and they've had so many problems that they all told to me : "Oliver do this only if you can't avoid this. And be sure that the work may be ok for the user, but it'll be crappy from the inside, and you won't be able to use it or you'll end up rewriting the whole thing". That's a big problem : a good programmer has been programming for 3-10 years to the least and India is a newbie for the programming world and they simply can't produce good code. They're learning, they're learning, they're catching up, but they're still very far from good programming.
SurferIX
04-24-2008, 03:20 PM
Let's talk about the speed : everything that was of no use has been removed. For example there is no X Display. Only SSH and command line mode. Mutt, vim and screen should be enough for every Apache C module developper !
:)
Maybe I didn't express myself properly : the OS is a Debian, and is 50 % faster than a classical distro, which means if it takes 3 minutes to do one thing on a classical distro, it will take 2 minutes on my PC.
Moreover, I've got 2 x 250 Gb hard drives that are replicated by the OS itself (one of the hot new stuff in the latest kernel), and when it comes to read, the kernel reads from both disks, resulting in a 25-30 % speed up (sorry for my English it's so poor). Same from writing, which makes small copies of files instantaneous.
Compiling the latest Apache took less than 20 seconds.
Compiling the latest Php took less than 12 seconds !!
This is just incredible how fast is it.
Let's talk about the speed : everything that was of no use has been removed. For example there is no X Display. Only SSH and command line mode. Mutt, vim and screen should be enough for every Apache C module developper !
:)
I suppose that if you're not running anything on the system, that will make it faster. But is it really worth not being able to run any X applications?
Maybe I didn't express myself properly : the OS is a Debian, and is 50 % faster than a classical distro, which means if it takes 3 minutes to do one thing on a classical distro, it will take 2 minutes on my PC.
For anything?
Moreover, I've got 2 x 250 Gb hard drives that are replicated by the OS itself (one of the hot new stuff in the latest kernel), and when it comes to read, the kernel reads from both disks, resulting in a 25-30 % speed up (sorry for my English it's so poor). Same from writing, which makes small copies of files instantaneous.
Admittedly I know very little about this, but I suppose reading duplicate disks could increase the speed. But I can't imagine writing the same data to two disks would be faster than writing the same data to one disk.
Unless you mean, for example, every even byte is stored on this disk, and every odd byte on the other . . . .
Compiling the latest Apache took less than 20 seconds.
Compiling the latest Php took less than 12 seconds !!
This is just incredible how fast is it.
I find that hard to believe, especially since Apache is several hundred thousand lines long.
'''It takes time!!!''' Do NOT interrupt the process with a '''ctrl-c''', it does not work.
Either wait or kill the process. If you kill it, you will be better cleaning up the directory
before retrying the command, there are a lot of meta-files created.
+ So have a coffee. Forget about your micro-wave oven, don't use instant coffee. You have
plenty of time (10 minutes at least) !
...
+ Total: 357319
That means your system is, what, 30 times faster than that, assuming you were compiling approximately the same amount of source code? . . . .
What does "time <command>" tell you? If it only takes 20 seconds, you won't mind redoing it, will you?
robwhit
04-28-2008, 02:31 PM
Make sure you also clean out the objs and the temporary files. make clean or whatever it is for that sw.
abachler
04-28-2008, 04:18 PM
Sounds like my boss, makes a great sales pitch to people that don't know the technology, but really can't back it up with tangeable results. He gets caught in the 'oh ........ I actually sold it now I have to make it work' trap all the time. Naturally its me that has to make it work.
cyberfish
05-08-2008, 01:25 AM
Moreover, I've got 2 x 250 Gb hard drives that are replicated by the OS itself (one of the hot new stuff in the latest kernel), and when it comes to read, the kernel reads from both disks, resulting in a 25-30 % speed up (sorry for my English it's so poor). Same from writing, which makes small copies of files instantaneous.
That is Linux software RAID. It has been there for quite a few years already. It is used extensively on servers.
Unless you mean, for example, every even byte is stored on this disk, and every odd byte on the other . . . .
More or less =).
laserlight
05-08-2008, 01:51 AM
Fast, cheap, works, pick two. If he is tryig to get it cheap then that is a defacto choice. Either he must take the time to find cheap labor that can make it work or he must not take the time, he cannot do both.
Off topic, but the current SQLite homepage slogan is: Small. Fast. Reliable. Choose any three.
Considering that SQLite is in the public domain, one could say that it is cheap. Reliable means it works, so effectively the slogan can be expanded to: small, fast, cheap, works, pick four :D
The bottleneck is... MySQL actually.
But no, do not go around thinking that SQLite can always serve as a drop in replacement for MySQL, even though for many applications that is the case.
vBulletin® v3.7.0, Copyright ©2000-2009, Jelsoft Enterprises Ltd.