Ouch, that sucks. I get two 10min breaks, a 20min walking break and a 30min lunch. Since none of it is really monitored, you try to set a pace/goals. I got an idea of how long something *should* take, if I take longer, then I might stay later at work, if I take shorter, I may browse the web for a bit to wind down. I really don't like leaving work until my current thought/idea is coded
"We've got sequels and expansions and spin-offs of anything even remotely successful"
The problem with many games now-a-days is they're story based. You get invested into a story which adds lots of value to the game.
FPS game are the only games that can easily be changed/unique because not being held to a story line. Any major FPS game is mostly multiplayer, so just make it fun and it's a winner. RTS/MMORPG/etc are a lot more involved and are more fun when there's a history.
Wikipedia: "the worldwide productivity cost of spam has been estimated to be $50 billion in 2005"
And that's back several years. Now include money scams/etc.
Piracy: Many independent researches have shown the people who pirate the most are the same people who are most likely to buy the material. eg. The guy who pirated Avatar was also the guy who went to the theater several times then went out and bought the blue-ray
Per person, people who pirate, spend more money. Yes, some people who pirate don't buy anything what-so-ever, but averages are all that matter.
I like Get/Set because sometimes because I want to access class variables, but I need some validation to happen. I also don't want to have a ton of method calls because it makes reading the code less natural. So, they make Get/Set which syntactically codes like accessing variables, but allows functionality.
If you don't prefer it, don't use it, but they work just fine. They're there to help "clean" up the code and make it easier to read/follow.
my Realtek, recent within 2 years, EVERY port works as either a mic or stereo out, and it's not mono mic, but supports stereo in. It auto detects the ports and lets me configure which port does what.
Win7 almost never waits. Not sure why you're still using XP. Heck, with Win7, I can transfer 110MB/sec with SMB and play games just fine. No more of that "what's running in the background slowing me down". Kick off a defrag and go play, let a virus scanner run in the background. I can't wait to get an SSD, I just got some white label HD in my Dell comp.
developing server apps to run parallel is easy, client software is hard. Many times, the cost of syncing threads is greater than the work you get from them. So you leave it single threaded. The question is, how may you design a Framework/API that is very thread friendly while making sure everything runs in the order expected all the while making it easy for bad programmers to take advantage of it.
The biggest issue with developing async-threaded programs is logical dependencies that don't allow part to be loaded/processed before another. If from square one, you develop an app to take advantage of extra threads, it may be less efficient, but more responsive. Most programmers I talk to have issues trying to understand the interweaving logic of multi-threaded programing.
I guess it's up to MS to make a easy to use idiot-proof threaded framework for crappy programmers to use.
Even with the default name and rainbow tables, a good password is still safe. eg. I have a 26 password and obviously hex. 16^26 = 20,282,409,603,651,670,423,947,251,286,016 combinations. Assume 26bytes per entry in the rainbow table, one byte of each hex char. 5.2734264969494343102262853343642e+32 bytes, divided by 1024 for KB divided by 1024 for MB divided by 1024 for GB is 491,126,114,218,443,102,224,384GB of storage for the rainbow tables. Lets assume you compress this file with a 468,374,361,246,531,584 to 1 compression ratio, you'll still need 1 ExaByte of storage for the rainbow tables. Since the rainbow table is just a large index, you'll need to store more than just the hash, so you're talking about an impossible storage requirement.
have fun with that.
I guess the only way around this would you get lucky and there's a hash collision with one of your pre-hashed password and my password. But this issue would also apply to people who even use non-default SSIDs.
I doubt a hub can do 400mbps since they don't make gigabit hubs and a 100mbps hub peaks at 100mbps of aggregate bandwidth.
On a side note, using iperf on my two home computer's, I get 1.5gbit/s when doing iperf on both up and down to work the full-duplex. I have a feeling my limit is the TCP offloading on my crappy integrate Dell NIC.
What is a good CPU usage for gigabit? My comp gets ~4% kernel time when iperf is doing 946mbit one way.
My crappy 1 year old $1k Best Buy Dell sux.. ehh? Full TCP/UDP+IPv4/6 offloading with Vista/Win7 chimney support.. w00t.iperf claims I have a 0.001ms ping to my wife's computer. Is that 1 microsecond?
My recent dlink wifi defaulted with wifi disabled and to enable it, I had to set a password to even activate for the first time. After the first time, it didn't care.
Either way, I proudly broadcast my SSID knowing I use a 26char hex password with AES.
Lets say I got 2 kids. Lets say each kid has access to their own 37" 1080p TV. Lets say I have my own TV. Now, how do I stream the newest block-buster at full Blue-Ray quality to each of these TV over the internet at the same time?.
Laying fiber is a fixed cost for the most part, assuming the occasional idiot digging where they shouldn't. The cost of the fiber was paid for a while back, so it's a moot point.
Now that the infrastructure is out of the way, lets concentrate on the rest.
They (Google/YouTube) needs to pay network admins/engineers to maintain and also the cost of the routers. Ohh...wait.. Google has F'N HUGE data centers, so a router or two on the edge that connects to fiber that they own is a near 0 cost since they probably have salaried workers that already do the same crap on a much larger scale in the rest of their data centers.
Fiber has a really good upgrade path because the main limit isn't the cable, but the routers on each end.
Seems everything is a fixed cost, so relatively speaking, it's free. Once the fiber and routers are setup, they run pretty much on their own and all the maintenance is covered by the salaried admins/engineers who spend 99% of their time on daily maintenance with their huge data centers.
During peak hours(5-10pm) I get these speeds typically Me to ISP: ~30mbit sub 10ms ping 1ms jitter Wisconsin to Wisconsin(Another ISP): 28mbit sub 10ms ping 1ms jitter Wisconsin to Chicago: ~15mbit ~20ms ping 2ms jitter Wisconsin to New York: ~10mbit ~40ms ping ~5ms jitter Wisconsin to LA: ~8mbit ~40ms ping ~5ms jitter
My ISP seems quite good, but obviously the back bone starts to bottle neck.
If you shout across a room filled with crowded people, to someone else, you'll be heard by some of them. That communication wasn't private. And so, if you use the auspices of a public provider and make no effort to encrypt or cover the conversation, it's fair game.
If you want 4th amendment protection, this means: you get your own domain, host it yourself, make every attempt to retain privacy and use encryption, and you could expect privacy and 4th amendment protection.
Honestly, if you're using any provider that doesn't have https, ssl, or another (end-to-end) email chain of communications that's encrypted, then you're communications are bare naked to the world anyway.
Your analogy fails in that shouting is a "broadcast" while most internet traffic is point to point. If you think my sending a packet to a game server somehow ends up being received by everyone on the internet, you'd better look up info on routing and switches.
The general rule of thumb should be, if the data should only be visible by your end point and the receiver's end point, then the government should have no reason to be snooping without a court order.
Technically, if you encrypted data but the government "just so happened" to have your key, then you'd be sending effectively clear text. And even if you're not doing anything illegal, they could be reading your "clear text".
Really, the only difference between "encrypted" and "clear text" is they're different encodings. Encrypted is relative to the viewer. If I "encrypted" my data by increasing the ascii values by 1, would it not be encrypted?
What I'm getting at is all reversible encryption is "clear text", but it's just not clear to some. If I wrote a letter to a friend in binary using ascii, I'm sure it would be relatively "encrypted" to the average person as they would not understand it.
Since encrypted or not encrypted is a black and white issue and encryption is relative then you mix in that anything relative is just a large grey area, then I guess nothing is encrypted. All your left with is data that you understood to be only readable by the person you sent it to.
I may not have worded my idea very clearly, but assuming transitive math applies, the theoretical difference between clear text and encrypted 100% relative to the viewer. Since it is impossible to guarantee 100% that only the viewers you gave the key can actually view the intended data, then you must assume that everyone has a chance of reading the data. Since everyone has a chance of viewing your intended data, the only real difference between "encrypted" and "clear text" is "encrypted" data is meant to only be viewed by people whom you wanted to view.
Since the only difference is based on intentions, then if I intend for my message to only be viewable to a certain person(s), then it should be guarded as such or is it the individuals responsibility to guard their rights from the government?
We all know that theory and practice don't always match up and in this case, the practical difference is quite large, but Law is theory.
Since Law is only bound by theory, then there is nothing wrong with me saying there is no difference between clear text and reversible encryption since the data is essentially the same. The government has no reason to not require permission from a judge on an individual basis. .
Depends on your queries. A poorly written query could easily be tens of thousands of times slower if written by someone who doesn't understand how DBs optimize. I've taken queries that ran in 3 seconds and had them run in under 100ms. I've taken queries that ran for 10 minutes and had them run in under 3 seconds.
My ISP advertises 1/5 for me. On the broadband speed test I got 1070kbps up and 10mbps down.. power boost..:-| 20ms latency and 2ms jitter. Tried both options and got the same results and I just tested at 7:30p which is during peak hours.
I don't have fast speeds, but nice reliable connection and I get the exact speed I'm advertised.. although, my ISP just applied for bankruptcy.
Ditto here. I got a 5/1 connection but with "power boost". Each connection stream gets a free 10 seconds of 30mbit at the start of the connection. I usually get 15mbit from New York, 20mbit from Chicago and 28mbit from my state for speed test.
Overall, I like power boost. It's not limited to just 10 seconds either. If my download caps at 10mbit, the "boost" will continue on for 30 seconds instead of 30mbit for 10seconds. I'm not sure where the cut-off is, but it's not a fixed amount of time, but a fixed amount of boosted data. I've seen Steam drag on a 7mbit download for quite a while. Eventually it tappered off to my 5mbit and jumped around between 4.9-5.1mbit.
My ISP claims the boost is per connection/stream. I know I can chain several downloads, one after the other, and maintain my boosted speed. I wonder if P2P style downloading could get around my 5mbit cap or ma'b my ISP has a second cap that will trigger if the boosted speed is too high for too long.
My speed might not be faster, but I get exactly my rated speed at all times of the day and very low pings anywhere in the USA.
if you use a proxy, your reported speed can't be faster than the proxy's speed. Also, if you report that you live in Washington and you connect to a proxy who's IP is from Sweeden, I'm sure that's easy to filter out. You can tell which CITY an IP is coming from. If you use a proxy that isn't in your city, it will be culled from their database.
Also, it won't report your private IP. It will report the last internet facing IP to send your packet, which in most cases is your NAT/Router.
you HAVE to share your bandwidth at some point. The internet is full of choke points. Cable is "fine" if they ISP doesn't over subscribe.
FIOS is actually very similar to cable. You do have a "direct" connections, but you connect and share the same router/hub as your local neighbors. The only real difference is the connection to your local hub isn't shared.
Your connection:
--Dedicated Fiber -- --Dedicated Fiber --
My connections
--Shared COAX-- --Dedicated Fiber --
Your internet connection is based on the weakest link, and my shared COAX is far from the weakest link. All of my intra-ISP hops do not fluctuate almost at all. Peak hours or not, my first few hops have the exact same pings/bandwidth. My ISP actually has it's own bandwidth tester and it's located on the edge of our ISP right before it hits the Chicago router and I get the same speeds any time of the day.
So it comes down to, how fast is your ISP's internet connection.
to go along with what you said, there are more specialized instructions about to come out. One is a new SSE style instruction that is 512bit but can be expanded. They eventually plan on turning this 512bit register into a 1024bit register and will calculated even more parallel data.
There are still more ways to make a single core faster.
HT on the p4 sucked because of lack of duplicated units. The P4 had a double pumped integer unit, so HT could dramatically speed up int based calculations, but the FP/SSE was not so if two threads were running at the same time and tried to access the FP, one thread would get the FP and the other would cause a stall. Because of this stall coupled with overhead of switching hardware threads, there was a performance loss.
Jump forward to the i7. Most everything is duplicated. The i7 has a shared SSE, but has separate add/div/mul FP units and duplicated integer units and a few others. This means when HT switches threads, there's a good chance that there will be no stall caused by a contended unit.
A prime example is databases. With the P4, the DB community at large recommended disabling HT. One reason was contended units, but also HT causes the cache to be effectively split, 1/2 for one thread and 1/2 for the other and DBs are cache sensitive. There have been several benchmarks showing the i7 crunching 1.5TB OLAP cubes with results of 200%-400% increase in speed clock-for-clock compared to previous gen Intels(aka core duo line).
Applications that are heavily SSE optimized will more than likely see a slowdown, but this is easily negated by simple optimizations to limit the app from running two threads on the same physical core. In a system/server that has mixed loads, HT could make a dramatic improvement.
I know with my i7, my grid/distributed computing programs claim ~2.7gigaflops per virtual cpu, which means 2flops/cycle per core. That means with HT, I'm getting 1flop per hardware thread. MUCH faster for SSE apps, but only on a per core basis, not per thread. Best bet would be to run 4 threads on SSE and 4 on regular Floats.
Both AMD and Intel can only do 1 DP Float or INT64 per cycle w/o SSE, but Intel with HT can do 2/cycle. So, overly simplified, it's 2xs faster. Most of the time you won't see 2x speed, but you will almost always see a decent amount more than w/o HT. FYI, AMD's future chips coming out next year will have something almost identical to HT.
Ouch, that sucks. I get two 10min breaks, a 20min walking break and a 30min lunch. Since none of it is really monitored, you try to set a pace/goals. I got an idea of how long something *should* take, if I take longer, then I might stay later at work, if I take shorter, I may browse the web for a bit to wind down. I really don't like leaving work until my current thought/idea is coded
What are they gonna do when IPv6 gives out /64 blocks for EVERYONE?
"We've got sequels and expansions and spin-offs of anything even remotely successful"
The problem with many games now-a-days is they're story based. You get invested into a story which adds lots of value to the game.
FPS game are the only games that can easily be changed/unique because not being held to a story line. Any major FPS game is mostly multiplayer, so just make it fun and it's a winner. RTS/MMORPG/etc are a lot more involved and are more fun when there's a history.
Wikipedia:
"the worldwide productivity cost of spam has been estimated to be $50 billion in 2005"
And that's back several years. Now include money scams/etc.
Piracy:
Many independent researches have shown the people who pirate the most are the same people who are most likely to buy the material.
eg. The guy who pirated Avatar was also the guy who went to the theater several times then went out and bought the blue-ray
Per person, people who pirate, spend more money. Yes, some people who pirate don't buy anything what-so-ever, but averages are all that matter.
I like Get/Set because sometimes because I want to access class variables, but I need some validation to happen. I also don't want to have a ton of method calls because it makes reading the code less natural. So, they make Get/Set which syntactically codes like accessing variables, but allows functionality.
If you don't prefer it, don't use it, but they work just fine. They're there to help "clean" up the code and make it easier to read/follow.
a = c.b;
d.b = a;
or
a = c.getb()
d.setb(a);
I think the first way is easier to read.
I learned about this back in 2002 in my Network security class
my Realtek, recent within 2 years, EVERY port works as either a mic or stereo out, and it's not mono mic, but supports stereo in. It auto detects the ports and lets me configure which port does what.
Win7 almost never waits. Not sure why you're still using XP. Heck, with Win7, I can transfer 110MB/sec with SMB and play games just fine. No more of that "what's running in the background slowing me down". Kick off a defrag and go play, let a virus scanner run in the background. I can't wait to get an SSD, I just got some white label HD in my Dell comp.
developing server apps to run parallel is easy, client software is hard. Many times, the cost of syncing threads is greater than the work you get from them. So you leave it single threaded. The question is, how may you design a Framework/API that is very thread friendly while making sure everything runs in the order expected all the while making it easy for bad programmers to take advantage of it.
The biggest issue with developing async-threaded programs is logical dependencies that don't allow part to be loaded/processed before another. If from square one, you develop an app to take advantage of extra threads, it may be less efficient, but more responsive. Most programmers I talk to have issues trying to understand the interweaving logic of multi-threaded programing.
I guess it's up to MS to make a easy to use idiot-proof threaded framework for crappy programmers to use.
Even with the default name and rainbow tables, a good password is still safe.
eg. I have a 26 password and obviously hex. 16^26 = 20,282,409,603,651,670,423,947,251,286,016 combinations. Assume 26bytes per entry in the rainbow table, one byte of each hex char. 5.2734264969494343102262853343642e+32 bytes, divided by 1024 for KB divided by 1024 for MB divided by 1024 for GB is 491,126,114,218,443,102,224,384GB of storage for the rainbow tables. Lets assume you compress this file with a 468,374,361,246,531,584 to 1 compression ratio, you'll still need 1 ExaByte of storage for the rainbow tables. Since the rainbow table is just a large index, you'll need to store more than just the hash, so you're talking about an impossible storage requirement.
have fun with that.
I guess the only way around this would you get lucky and there's a hash collision with one of your pre-hashed password and my password. But this issue would also apply to people who even use non-default SSIDs.
I doubt a hub can do 400mbps since they don't make gigabit hubs and a 100mbps hub peaks at 100mbps of aggregate bandwidth.
On a side note, using iperf on my two home computer's, I get 1.5gbit/s when doing iperf on both up and down to work the full-duplex. I have a feeling my limit is the TCP offloading on my crappy integrate Dell NIC.
What is a good CPU usage for gigabit? My comp gets ~4% kernel time when iperf is doing 946mbit one way.
My crappy 1 year old $1k Best Buy Dell sux.. ehh? Full TCP/UDP+IPv4/6 offloading with Vista/Win7 chimney support.. w00t.iperf claims I have a 0.001ms ping to my wife's computer. Is that 1 microsecond?
My recent dlink wifi defaulted with wifi disabled and to enable it, I had to set a password to even activate for the first time. After the first time, it didn't care.
Either way, I proudly broadcast my SSID knowing I use a 26char hex password with AES.
Lets say I got 2 kids. Lets say each kid has access to their own 37" 1080p TV. Lets say I have my own TV. Now, how do I stream the newest block-buster at full Blue-Ray quality to each of these TV over the internet at the same time?.
Laying fiber is a fixed cost for the most part, assuming the occasional idiot digging where they shouldn't. The cost of the fiber was paid for a while back, so it's a moot point.
Now that the infrastructure is out of the way, lets concentrate on the rest.
They (Google/YouTube) needs to pay network admins/engineers to maintain and also the cost of the routers. Ohh...wait.. Google has F'N HUGE data centers, so a router or two on the edge that connects to fiber that they own is a near 0 cost since they probably have salaried workers that already do the same crap on a much larger scale in the rest of their data centers.
Fiber has a really good upgrade path because the main limit isn't the cable, but the routers on each end.
Seems everything is a fixed cost, so relatively speaking, it's free. Once the fiber and routers are setup, they run pretty much on their own and all the maintenance is covered by the salaried admins/engineers who spend 99% of their time on daily maintenance with their huge data centers.
During peak hours(5-10pm) I get these speeds typically
Me to ISP: ~30mbit sub 10ms ping 1ms jitter
Wisconsin to Wisconsin(Another ISP): 28mbit sub 10ms ping 1ms jitter
Wisconsin to Chicago: ~15mbit ~20ms ping 2ms jitter
Wisconsin to New York: ~10mbit ~40ms ping ~5ms jitter
Wisconsin to LA: ~8mbit ~40ms ping ~5ms jitter
My ISP seems quite good, but obviously the back bone starts to bottle neck.
My i7 920/ati 4850/4GBram uses under 300 watts pegged. The ATI 5870 which is over 2.5xs faster than my 4850 uses only 20watts more power peak.
Once I get my 5870, my computer will use ~320watts peak.
Now, compare that to my Athlon-xp 2500+(1.83ghz) and geforce 5900fx which consumed ~150watts peak.
My new computer consumes a bout 113% more power but is ~3100% faster.
decent trade-off.
actually, my new computer uses LESS power idle.. A LOT less.
For vector based calculations
My i7 ~90watts
My ATI 4850 ~150watts
My 4850 is about 1000 times faster than my i7 for certain distributed programs, yet under 2x's the power draw.
If you shout across a room filled with crowded people, to someone else, you'll be heard by some of them. That communication wasn't private. And so, if you use the auspices of a public provider and make no effort to encrypt or cover the conversation, it's fair game.
If you want 4th amendment protection, this means: you get your own domain, host it yourself, make every attempt to retain privacy and use encryption, and you could expect privacy and 4th amendment protection.
Honestly, if you're using any provider that doesn't have https, ssl, or another (end-to-end) email chain of communications that's encrypted, then you're communications are bare naked to the world anyway.
Your analogy fails in that shouting is a "broadcast" while most internet traffic is point to point. If you think my sending a packet to a game server somehow ends up being received by everyone on the internet, you'd better look up info on routing and switches.
The general rule of thumb should be, if the data should only be visible by your end point and the receiver's end point, then the government should have no reason to be snooping without a court order.
Technically, if you encrypted data but the government "just so happened" to have your key, then you'd be sending effectively clear text. And even if you're not doing anything illegal, they could be reading your "clear text".
Really, the only difference between "encrypted" and "clear text" is they're different encodings. Encrypted is relative to the viewer. If I "encrypted" my data by increasing the ascii values by 1, would it not be encrypted?
What I'm getting at is all reversible encryption is "clear text", but it's just not clear to some. If I wrote a letter to a friend in binary using ascii, I'm sure it would be relatively "encrypted" to the average person as they would not understand it.
Since encrypted or not encrypted is a black and white issue and encryption is relative then you mix in that anything relative is just a large grey area, then I guess nothing is encrypted. All your left with is data that you understood to be only readable by the person you sent it to.
I may not have worded my idea very clearly, but assuming transitive math applies, the theoretical difference between clear text and encrypted 100% relative to the viewer. Since it is impossible to guarantee 100% that only the viewers you gave the key can actually view the intended data, then you must assume that everyone has a chance of reading the data. Since everyone has a chance of viewing your intended data, the only real difference between "encrypted" and "clear text" is "encrypted" data is meant to only be viewed by people whom you wanted to view.
Since the only difference is based on intentions, then if I intend for my message to only be viewable to a certain person(s), then it should be guarded as such or is it the individuals responsibility to guard their rights from the government?
We all know that theory and practice don't always match up and in this case, the practical difference is quite large, but Law is theory.
Since Law is only bound by theory, then there is nothing wrong with me saying there is no difference between clear text and reversible encryption since the data is essentially the same. The government has no reason to not require permission from a judge on an individual basis.
.
Depends on your queries. A poorly written query could easily be tens of thousands of times slower if written by someone who doesn't understand how DBs optimize. I've taken queries that ran in 3 seconds and had them run in under 100ms. I've taken queries that ran for 10 minutes and had them run in under 3 seconds.
I guess it depends on what you're doing.
My ISP advertises 1/5 for me. On the broadband speed test I got 1070kbps up and 10mbps down.. power boost.. :-| 20ms latency and 2ms jitter. Tried both options and got the same results and I just tested at 7:30p which is during peak hours.
I don't have fast speeds, but nice reliable connection and I get the exact speed I'm advertised.. although, my ISP just applied for bankruptcy.
Ditto here. I got a 5/1 connection but with "power boost". Each connection stream gets a free 10 seconds of 30mbit at the start of the connection. I usually get 15mbit from New York, 20mbit from Chicago and 28mbit from my state for speed test.
Overall, I like power boost. It's not limited to just 10 seconds either. If my download caps at 10mbit, the "boost" will continue on for 30 seconds instead of 30mbit for 10seconds. I'm not sure where the cut-off is, but it's not a fixed amount of time, but a fixed amount of boosted data. I've seen Steam drag on a 7mbit download for quite a while. Eventually it tappered off to my 5mbit and jumped around between 4.9-5.1mbit.
My ISP claims the boost is per connection/stream. I know I can chain several downloads, one after the other, and maintain my boosted speed. I wonder if P2P style downloading could get around my 5mbit cap or ma'b my ISP has a second cap that will trigger if the boosted speed is too high for too long.
My speed might not be faster, but I get exactly my rated speed at all times of the day and very low pings anywhere in the USA.
if you use a proxy, your reported speed can't be faster than the proxy's speed. Also, if you report that you live in Washington and you connect to a proxy who's IP is from Sweeden, I'm sure that's easy to filter out. You can tell which CITY an IP is coming from. If you use a proxy that isn't in your city, it will be culled from their database.
Also, it won't report your private IP. It will report the last internet facing IP to send your packet, which in most cases is your NAT/Router.
you HAVE to share your bandwidth at some point. The internet is full of choke points. Cable is "fine" if they ISP doesn't over subscribe.
FIOS is actually very similar to cable. You do have a "direct" connections, but you connect and share the same router/hub as your local neighbors. The only real difference is the connection to your local hub isn't shared.
Your connection:
--Dedicated Fiber -- --Dedicated Fiber --
My connections
--Shared COAX-- --Dedicated Fiber --
Your internet connection is based on the weakest link, and my shared COAX is far from the weakest link. All of my intra-ISP hops do not fluctuate almost at all. Peak hours or not, my first few hops have the exact same pings/bandwidth. My ISP actually has it's own bandwidth tester and it's located on the edge of our ISP right before it hits the Chicago router and I get the same speeds any time of the day.
So it comes down to, how fast is your ISP's internet connection.
to go along with what you said, there are more specialized instructions about to come out. One is a new SSE style instruction that is 512bit but can be expanded. They eventually plan on turning this 512bit register into a 1024bit register and will calculated even more parallel data.
There are still more ways to make a single core faster.
HT on the i7. Bit of info.
HT on the p4 sucked because of lack of duplicated units. The P4 had a double pumped integer unit, so HT could dramatically speed up int based calculations, but the FP/SSE was not so if two threads were running at the same time and tried to access the FP, one thread would get the FP and the other would cause a stall. Because of this stall coupled with overhead of switching hardware threads, there was a performance loss.
Jump forward to the i7. Most everything is duplicated. The i7 has a shared SSE, but has separate add/div/mul FP units and duplicated integer units and a few others. This means when HT switches threads, there's a good chance that there will be no stall caused by a contended unit.
A prime example is databases. With the P4, the DB community at large recommended disabling HT. One reason was contended units, but also HT causes the cache to be effectively split, 1/2 for one thread and 1/2 for the other and DBs are cache sensitive. There have been several benchmarks showing the i7 crunching 1.5TB OLAP cubes with results of 200%-400% increase in speed clock-for-clock compared to previous gen Intels(aka core duo line).
Applications that are heavily SSE optimized will more than likely see a slowdown, but this is easily negated by simple optimizations to limit the app from running two threads on the same physical core. In a system/server that has mixed loads, HT could make a dramatic improvement.
I know with my i7, my grid/distributed computing programs claim ~2.7gigaflops per virtual cpu, which means 2flops/cycle per core. That means with HT, I'm getting 1flop per hardware thread. MUCH faster for SSE apps, but only on a per core basis, not per thread. Best bet would be to run 4 threads on SSE and 4 on regular Floats.
Both AMD and Intel can only do 1 DP Float or INT64 per cycle w/o SSE, but Intel with HT can do 2/cycle. So, overly simplified, it's 2xs faster. Most of the time you won't see 2x speed, but you will almost always see a decent amount more than w/o HT. FYI, AMD's future chips coming out next year will have something almost identical to HT.