Why the fuck does everyone thing that the remote capability adds overhead to X? X communicates via UNIX domain sockets (very fast in Linux) over a local connection. In Windows, GDI.dll communicates with the kernel via LPC (lightweight procedure calls, another form of IPC). For any of these mechanisms, shunting IPC communication to a remote connection is trivial and has no performance impact in the general case. Hell, even with COM, something much more low-level (which is based on C++ virtual function calls) network transparency has no performance hit in the local case.
I have to run X->xlib->window manager->windowing library->desktop environment->various daemons just to get a desktop equivalent to Windows 95. >>>>>>>>>> There should be a test in software architecture as a requirement for posting to Slashdot. The layering you're bitching about is present in all software systems. It's just that with Windows, they don't have names that the marketing people spit out all the time.
KDE - Higher level services in user.dll Qt - MFC, User.dll, Commctl.dll, Comdlg32.dll xlib - GDI32.dll X server - Kernel end of GDI XAA - DDI
No. It's like expecting Sony not to invoke the DMCA on you if you try to overclock their DVD player. Nobody is claiming you should get waranty protection for overclocking a CPU...
In our society, the consumer has a whole lot more rights than just the right not to buy something. And unless you sign a contract before hand, you have the right to do whatever the hell you want with any physical piece of property you purchase.
Watches Matrix reloaded trailer. Watches Liquid video. Watches "Enemy At The Gates" DVD. Nope, still looks shitty to me. I'm using an LCD, though, thtat might have something to do with it.
My source of information is the original gulf war. We had the same direct reports and footage from that too. Afterwards, we found out that the army was really jerking the reporters around by the bit. It won't be until all the dust settles that we get an actual idea of what's happening. Beyond that, you don't take into account all the factors that are making people behave the way they do. In the US, if you say a couple of hundred people rioting near the whitehouse, would you come to the conclusion that the entire US population has decided it wants to get rid of its government? What about all those people merely acting to make sure they don't piss off their new rulers? History has shown that people, even in countries run by oppressive dictators, do not like foreigners changing their government for them. If this is one of those rare exceptions that actually works out, like Japan was, then yay for the US. But at this point, you're hoping for a miracle rather than operating on logical precedence.
It kinda has to do with the pixel pitch. UXGA is just another name for 1600x1200. Any screen that has 1600x1200 is a UXGA screen. On a 15" laptop LCD, that means you're getting 133dpi, which is a huge step forward (in terms of readability) over the usual 80-90 dpi you find in most screens. Fonts become more than a single pixel thick, so it's *much* easier on the eyes. It's not quite like reading paper (that'll hit at about 200-300 dpi) but it beats staring at a low-res CRT any day:)
Damn. I gotta harp on this idiot again. Here is a little reading list for you. These are all famous, very specifically political novels. These are just the ones I remember from an English class years ago.
1) John Updike -- Grapes of Wrath. 1920's populism. 2) Joseph Conrad -- Heart of Darkness. European colonialism. 3) Arthur Miller -- The Crucible. 1950's McCarthyism. 4) Upton Sinclair -- The Jungle. 1900's meat industry. 5) James Joyce -- Portrait of the Artist as a Young man. Irish nationalism.
Okay, that last one is debatable. I think Joyce is being political in his emphatic rejection of Irish nationalism. Either way, he still references lot's of contemporary politics like Charles Parnell's affair and subsequent political scandel.
Um, try reading something sometime. Or watching a movie. Anything. Most art is created to comment on the human condition. A huge part of the human condition is politics. Do you even remember all the books that you had to read in high school?
Dude. Not even you're dumb enough to belive the US media at this moment. The country is at war. What they're telling you in the media is significantly fudged. Not lies, just edited perspectives. After the original gulf war, we found out that the shit stunk a lot more than we thought at first. It's the nature of any country at war to turn up the propoganda machine a bit. In a year or so, we'll see what's really happening. Not that the American public will know about it then anyway, because we've got the memories of frickin goldfish, but at least the few people who actually care will be able to find out.
I just watched one of these videos. It's kinda shitty. Even a regular DVD (resampled to 1600x1200 no less) looks much sharper and clearer than this POS. Take a look at the "Liquid" video. Right off the bat, at the title screen, you notice significant "cloudiness" in the sharp contrasting areas between the red title text and the black background. The Matrix Reloaded trailer yesterday was a lot better.
MP3 is hardly a low quality format. If you've got a good encoder (I use lame --alt-preset extreme, on advice I got from the Slashdot crowd) it's absolutely top-notch, even on good ($100+) headphones. Heck, the shitty audio environment in an average PC is a hell of a bigger bottleneck than the codec. As for filling up all that space, 15GB is about the size of 150 albums at 256kbps. My mom's collection is bigger than that!
The iPod absolutely rules the roost with respect to HDD players. It has something like 30% market share. It's incredibly slick, really small, and get's rave reviews in every single mag. Apple's innovation was to make something tiny, easy to use, that didn't look like a toy (like the Archos and eDig players do). Even though the Pod was released in 2001, you still can't get anything remotely the same size. A cm on each side doesn't sound like much, but the iPod fits comfortably in a shirt pocket, while even the smallest 2.5" ones cause a significant bluge. If the iPod wasn't so ground breaking, you'd think they'd have some competition by now:)
PS> I absolutely detest Apple. They're a marketing fluff, lie to your customers, style over substance, BS type of company. But I've got to give credit where credit is due. I'm getting an iPod the minute the new ones come out:)
That's funny. On my machine, Intel C++ 7.x compiles a simple std::string/std::vector test into code that executes slight faster than the equivilent const char */const char ** test. Unless you have the time to hand optimize every little data structure, the STL will be faster in the long run. I always find it silly when I read C books, and see something like "a linked list isn't the most efficient data structure for this, but this operation isn't *that* critical, and using a list saves implementation complexity." If we were using the STL, you could just use whatever data structure was best suited to the task at hand, without worrying about implementation complexity!
My brother, 13, recently went to a mock UN conference for middle school students. The question under debate was biased reporting in the media about Islam. The suggested resolution that a committe of several dozen of these young teens came to was that some limited censorship of the media by the UN would be an acceptable price to pay to get rid of bias in the media. These were all intelligent kids, who know far more about the political world (they still remember their American history classes and like learning about international subjects) than most adults. They're all well-meaning, idealistic young people. Yet, the still made a very stupid resolution. My point is that it does not take dumb people with evil intentions to make bad laws. Rather, it takes exeptional people with the noblest of intentions to make good ones. Something important like the Patriot act should not be written under duress. Decisions about how long it should last should not be made in the middle of a patriotic frenzy during a war. The rather low-caliber individuals already in Congress are barely qualified as it is to write something this important. Having them do it, under these conditions is a sure recepie for disaster. If we need any law right now, we need one that prevents the government from making permanent legislation during times of war.
In summary: the Constitution is hard to amend because the founding fathers realized that few of their sucessors would be up to the task of changing such an important document. Only those that can convience not only a majority that voted for them, but most of those that didn't as well, should be able to make such a change. Only those people are qualified enough to do so.
I was being sarcastic. I didn't mean to slight all those people watching out for 64-bit cleanliness in the least way. I just used that statistic because I happen to be running Gentoo, and if I get an Opteron machine, I'd have to wait for Gentoo to support it first.
I can't find any of your numbers at the Sun sites you linked to. I'm talking about porting the HotSpot or the IBM VM. Those are most definately not less than 1MB of code. The HotSpot VM is more than 235,000 lines of code. For reference, that's about as large as the non-driver core of Linux 2.0. Imagine writing trying to write an OS in C/C++ and having to port 235,000 lines of code first!
Send letters, rather than emails. Emails are too easy to ignore. But otherwise, I think this is a great idea. You've convinced me to scrounge up a stamp. Let's Slashdot Congress!
1) *The* Java VM is very difficult to port. Java VMs in general aren't, but if you want something that is performance competitive, you need one of the big ones. This is a pain at the application level, but would suck for a systems-level language like C/C++. 2) C/C++ doesn't have the benefit of a portable runtime. If it had a giant class library like Java, you'd have to port a whole lot of native code.
This is nothing to slight Java. For the places where Java is used, the large runtime isn't a big disadvantage. But C/C++ is used in very different places than Java.
Why? It's smaller than most code, but why does that inherantly benefit Java? >>>>>> The reason it inheretly benefit Java is because of the characteristics of the Java language. First of all, it's a JIT language. Thus, if you have a tight inner loop, the JIT optimizer can optimize the hell out of it (even more so because it has access to runtime information that the static C++ optimizer does not) and just hand it over to the processor for execution. The JVM isn't even executed again until the loop is over. This situation doesn't invoke any of the language overhead that makes Java slow. This overhead takes many forms. The JVM has a large instruction cache footprint. Java objects all have an extra header containing type information that causes a data cache footprint and impacts memory bandwidth. The garbage collector can be a big problem. As Tannenbaum said, avoiding disaster is more important that optimal performance. The average case allocation/deallocation might be quite fast for a garbage collector, but when an actual collection occurs, you get that "disaster" that you're trying to avoid. The collection process thrashes the cache and occupies the application for a (comparatively) long time. When a function is invoked, the JVM has to check to see if the JIT has the code already cached. This takes time. Move beyond that to the Java APIs themselves. The Java APIs are designed for purity and ease of use. APIs like the C++ STL are designed for pure performance. For example, a dynamic cast is inherently slow, by the nature of the operation. Yet, the Java Collection APIs require them for every access. All Java class methods are by default indirect. Last time I measured (on a PII 300) indirect calls are about 10 times slower than direct calls. A small numeric benchmark doesn't hit any of these performance issues, but real application code hits them, hard.
Ha ha. MS lusers. The Alpha port of Gentoo took 2 days. I'm guessing that the Gentoo port to x86-64 will be out before UPS Ground manages to deliver all the parts for my machine...
Why the fuck does everyone thing that the remote capability adds overhead to X? X communicates via UNIX domain sockets (very fast in Linux) over a local connection. In Windows, GDI.dll communicates with the kernel via LPC (lightweight procedure calls, another form of IPC). For any of these mechanisms, shunting IPC communication to a remote connection is trivial and has no performance impact in the general case. Hell, even with COM, something much more low-level (which is based on C++ virtual function calls) network transparency has no performance hit in the local case.
I have to run X->xlib->window manager->windowing library->desktop environment->various daemons just to get a desktop equivalent to Windows 95.
>>>>>>>>>>
There should be a test in software architecture as a requirement for posting to Slashdot. The layering you're bitching about is present in all software systems. It's just that with Windows, they don't have names that the marketing people spit out all the time.
KDE - Higher level services in user.dll
Qt - MFC, User.dll, Commctl.dll, Comdlg32.dll
xlib - GDI32.dll
X server - Kernel end of GDI
XAA - DDI
No. It's like expecting Sony not to invoke the DMCA on you if you try to overclock their DVD player. Nobody is claiming you should get waranty protection for overclocking a CPU...
In our society, the consumer has a whole lot more rights than just the right not to buy something. And unless you sign a contract before hand, you have the right to do whatever the hell you want with any physical piece of property you purchase.
Watches Matrix reloaded trailer. Watches Liquid video. Watches "Enemy At The Gates" DVD. Nope, still looks shitty to me. I'm using an LCD, though, thtat might have something to do with it.
My source of information is the original gulf war. We had the same direct reports and footage from that too. Afterwards, we found out that the army was really jerking the reporters around by the bit. It won't be until all the dust settles that we get an actual idea of what's happening. Beyond that, you don't take into account all the factors that are making people behave the way they do. In the US, if you say a couple of hundred people rioting near the whitehouse, would you come to the conclusion that the entire US population has decided it wants to get rid of its government? What about all those people merely acting to make sure they don't piss off their new rulers? History has shown that people, even in countries run by oppressive dictators, do not like foreigners changing their government for them. If this is one of those rare exceptions that actually works out, like Japan was, then yay for the US. But at this point, you're hoping for a miracle rather than operating on logical precedence.
It kinda has to do with the pixel pitch. UXGA is just another name for 1600x1200. Any screen that has 1600x1200 is a UXGA screen. On a 15" laptop LCD, that means you're getting 133dpi, which is a huge step forward (in terms of readability) over the usual 80-90 dpi you find in most screens. Fonts become more than a single pixel thick, so it's *much* easier on the eyes. It's not quite like reading paper (that'll hit at about 200-300 dpi) but it beats staring at a low-res CRT any day :)
Damn. I gotta harp on this idiot again. Here is a little reading list for you. These are all famous, very specifically political novels. These are just the ones I remember from an English class years ago.
1) John Updike -- Grapes of Wrath. 1920's populism.
2) Joseph Conrad -- Heart of Darkness. European colonialism.
3) Arthur Miller -- The Crucible. 1950's McCarthyism.
4) Upton Sinclair -- The Jungle. 1900's meat industry.
5) James Joyce -- Portrait of the Artist as a Young man. Irish nationalism.
Okay, that last one is debatable. I think Joyce is being political in his emphatic rejection of Irish nationalism. Either way, he still references lot's of contemporary politics like Charles Parnell's affair and subsequent political scandel.
Try reading anything by anyone Irish after Britain occupied it. Then tell me how "political messages" make for bad story telling.
Um, try reading something sometime. Or watching a movie. Anything. Most art is created to comment on the human condition. A huge part of the human condition is politics. Do you even remember all the books that you had to read in high school?
Dude. Not even you're dumb enough to belive the US media at this moment. The country is at war. What they're telling you in the media is significantly fudged. Not lies, just edited perspectives. After the original gulf war, we found out that the shit stunk a lot more than we thought at first. It's the nature of any country at war to turn up the propoganda machine a bit. In a year or so, we'll see what's really happening. Not that the American public will know about it then anyway, because we've got the memories of frickin goldfish, but at least the few people who actually care will be able to find out.
How do you eat food without cooking it.
Oh wait, this is the US...nevermind...
I just watched one of these videos. It's kinda shitty. Even a regular DVD (resampled to 1600x1200 no less) looks much sharper and clearer than this POS. Take a look at the "Liquid" video. Right off the bat, at the title screen, you notice significant "cloudiness" in the sharp contrasting areas between the red title text and the black background. The Matrix Reloaded trailer yesterday was a lot better.
Um, the DRM thing is independent of the actual OGG project. In theory, you could DRM anything like that!
MP3 is hardly a low quality format. If you've got a good encoder (I use lame --alt-preset extreme, on advice I got from the Slashdot crowd) it's absolutely top-notch, even on good ($100+) headphones. Heck, the shitty audio environment in an average PC is a hell of a bigger bottleneck than the codec. As for filling up all that space, 15GB is about the size of 150 albums at 256kbps. My mom's collection is bigger than that!
The iPod absolutely rules the roost with respect to HDD players. It has something like 30% market share. It's incredibly slick, really small, and get's rave reviews in every single mag. Apple's innovation was to make something tiny, easy to use, that didn't look like a toy (like the Archos and eDig players do). Even though the Pod was released in 2001, you still can't get anything remotely the same size. A cm on each side doesn't sound like much, but the iPod fits comfortably in a shirt pocket, while even the smallest 2.5" ones cause a significant bluge. If the iPod wasn't so ground breaking, you'd think they'd have some competition by now :)
:)
PS> I absolutely detest Apple. They're a marketing fluff, lie to your customers, style over substance, BS type of company. But I've got to give credit where credit is due. I'm getting an iPod the minute the new ones come out
Pushing 1MB/sec plus at the moment. Oh, there we go. It just finished...
That's funny. On my machine, Intel C++ 7.x compiles a simple std::string/std::vector test into code that executes slight faster than the equivilent const char */const char ** test. Unless you have the time to hand optimize every little data structure, the STL will be faster in the long run. I always find it silly when I read C books, and see something like "a linked list isn't the most efficient data structure for this, but this operation isn't *that* critical, and using a list saves implementation complexity." If we were using the STL, you could just use whatever data structure was best suited to the task at hand, without worrying about implementation complexity!
My brother, 13, recently went to a mock UN conference for middle school students. The question under debate was biased reporting in the media about Islam. The suggested resolution that a committe of several dozen of these young teens came to was that some limited censorship of the media by the UN would be an acceptable price to pay to get rid of bias in the media. These were all intelligent kids, who know far more about the political world (they still remember their American history classes and like learning about international subjects) than most adults. They're all well-meaning, idealistic young people. Yet, the still made a very stupid resolution. My point is that it does not take dumb people with evil intentions to make bad laws. Rather, it takes exeptional people with the noblest of intentions to make good ones. Something important like the Patriot act should not be written under duress. Decisions about how long it should last should not be made in the middle of a patriotic frenzy during a war. The rather low-caliber individuals already in Congress are barely qualified as it is to write something this important. Having them do it, under these conditions is a sure recepie for disaster. If we need any law right now, we need one that prevents the government from making permanent legislation during times of war.
In summary: the Constitution is hard to amend because the founding fathers realized that few of their sucessors would be up to the task of changing such an important document. Only those that can convience not only a majority that voted for them, but most of those that didn't as well, should be able to make such a change. Only those people are qualified enough to do so.
I was being sarcastic. I didn't mean to slight all those people watching out for 64-bit cleanliness in the least way. I just used that statistic because I happen to be running Gentoo, and if I get an Opteron machine, I'd have to wait for Gentoo to support it first.
I can't find any of your numbers at the Sun sites you linked to. I'm talking about porting the HotSpot or the IBM VM. Those are most definately not less than 1MB of code. The HotSpot VM is more than 235,000 lines of code. For reference, that's about as large as the non-driver core of Linux 2.0. Imagine writing trying to write an OS in C/C++ and having to port 235,000 lines of code first!
Send letters, rather than emails. Emails are too easy to ignore. But otherwise, I think this is a great idea. You've convinced me to scrounge up a stamp. Let's Slashdot Congress!
1) *The* Java VM is very difficult to port. Java VMs in general aren't, but if you want something that is performance competitive, you need one of the big ones. This is a pain at the application level, but would suck for a systems-level language like C/C++.
2) C/C++ doesn't have the benefit of a portable runtime. If it had a giant class library like Java, you'd have to port a whole lot of native code.
This is nothing to slight Java. For the places where Java is used, the large runtime isn't a big disadvantage. But C/C++ is used in very different places than Java.
Why? It's smaller than most code, but why does that inherantly benefit Java?
>>>>>>
The reason it inheretly benefit Java is because of the characteristics of the Java language. First of all, it's a JIT language. Thus, if you have a tight inner loop, the JIT optimizer can optimize the hell out of it (even more so because it has access to runtime information that the static C++ optimizer does not) and just hand it over to the processor for execution. The JVM isn't even executed again until the loop is over. This situation doesn't invoke any of the language overhead that makes Java slow. This overhead takes many forms. The JVM has a large instruction cache footprint. Java objects all have an extra header containing type information that causes a data cache footprint and impacts memory bandwidth. The garbage collector can be a big problem. As Tannenbaum said, avoiding disaster is more important that optimal performance. The average case allocation/deallocation might be quite fast for a garbage collector, but when an actual collection occurs, you get that "disaster" that you're trying to avoid. The collection process thrashes the cache and occupies the application for a (comparatively) long time. When a function is invoked, the JVM has to check to see if the JIT has the code already cached. This takes time. Move beyond that to the Java APIs themselves. The Java APIs are designed for purity and ease of use. APIs like the C++ STL are designed for pure performance. For example, a dynamic cast is inherently slow, by the nature of the operation. Yet, the Java Collection APIs require them for every access. All Java class methods are by default indirect. Last time I measured (on a PII 300) indirect calls are about 10 times slower than direct calls. A small numeric benchmark doesn't hit any of these performance issues, but real application code hits them, hard.
Ha ha. MS lusers. The Alpha port of Gentoo took 2 days. I'm guessing that the Gentoo port to x86-64 will be out before UPS Ground manages to deliver all the parts for my machine...