|
CDP1802 wrote: postponed because of the storm
Political or meteorological?
If you have an important point to make, don't try to be subtle or clever. Use a pile driver. Hit the point once. Then come back and hit it again. Then hit it a third time - a tremendous whack.
--Winston Churchill
|
|
|
|
|
Daniel Pfeffer wrote: Political or meteorological? Physiological?
* CALL APOGEE, SAY AARDWOLF
* GCS d--- s-/++ a- C++++ U+++ P- L- E-- W++ N++ o+ K- w+++ O? M-- V? PS+ PE- Y+ PGP t++ 5? X R++ tv-- b+ DI+++ D++ G e++>+++ h--- ++>+++ y+++* Weapons extension: ma- k++ F+2 X
* Never pay more than 20 bucks for a computer game.
* I'm a puny punmaker.
|
|
|
|
|
Pathological?
The language is JavaScript. that of Mordor, which I will not utter here
This is Javascript. If you put big wheels and a racing stripe on a golf cart, it's still a f***ing golf cart.
"I don't know, extraterrestrial?"
"You mean like from space?"
"No, from Canada."
If software development were a circus, we would all be the clowns.
|
|
|
|
|
psychological?
M.D.V.
If something has a solution... Why do we have to worry about?. If it has no solution... For what reason do we have to worry about?
Help me to understand what I'm saying, and I'll explain it better to you
Rating helpful answers is nice, but saying thanks can be even nicer.
|
|
|
|
|
Quote: sicker than a VB6 user Love it! I might have to steal that phrase.
|
|
|
|
|
I *am* a VB6 user (no longer for choice) and I feel offended nah I'm actually pretty sick. Sick of VB6 and very, very sick.
* CALL APOGEE, SAY AARDWOLF
* GCS d--- s-/++ a- C++++ U+++ P- L- E-- W++ N++ o+ K- w+++ O? M-- V? PS+ PE- Y+ PGP t++ 5? X R++ tv-- b+ DI+++ D++ G e++>+++ h--- ++>+++ y+++* Weapons extension: ma- k++ F+2 X
* Never pay more than 20 bucks for a computer game.
* I'm a puny punmaker.
|
|
|
|
|
A meteorite will hit and destroy your house while everyone's out, tomorrow.
I wanna be a eunuchs developer! Pass me a bread knife!
|
|
|
|
|
Good thing I'm a tenant then
* CALL APOGEE, SAY AARDWOLF
* GCS d--- s-/++ a- C++++ U+++ P- L- E-- W++ N++ o+ K- w+++ O? M-- V? PS+ PE- Y+ PGP t++ 5? X R++ tv-- b+ DI+++ D++ G e++>+++ h--- ++>+++ y+++* Weapons extension: ma- k++ F+2 X
* Never pay more than 20 bucks for a computer game.
* I'm a puny punmaker.
|
|
|
|
|
Oh. So maybe you won't have such a great celebratory party when it doesn't happen.
I wanna be a eunuchs developer! Pass me a bread knife!
|
|
|
|
|
I definetely prefer if it doesn't happen - furniture costs a lot and it's all fairly new. Plus my costly new computer - which alone costs as much as my whole kitchen furniture + appliances.
* CALL APOGEE, SAY AARDWOLF
* GCS d--- s-/++ a- C++++ U+++ P- L- E-- W++ N++ o+ K- w+++ O? M-- V? PS+ PE- Y+ PGP t++ 5? X R++ tv-- b+ DI+++ D++ G e++>+++ h--- ++>+++ y+++* Weapons extension: ma- k++ F+2 X
* Never pay more than 20 bucks for a computer game.
* I'm a puny punmaker.
|
|
|
|
|
I feel your pain. I've just recovered from a nasty little bug and it's not that long ago that I was having to do some work with VB3 (I kid you not - but it was Ok because we were upgrading the software to .... VB6 )
|
|
|
|
|
W∴ Balboos wrote: "It could have been worse"
Sounds like snowboarding is out
Ah, I see you have the machine that goes ping. This is my favorite. You see we lease it back from the company we sold it to and that way it comes under the monthly current budget and not the capital account.
modified 31-Aug-21 21:01pm.
|
|
|
|
|
In these parts, the term is Surfing - but that's out, too.
Ravings en masse^ |
---|
"The difference between genius and stupidity is that genius has its limits." - Albert Einstein | "If you are searching for perfection in others, then you seek disappointment. If you are seek perfection in yourself, then you will find failure." - Balboos HaGadol Mar 2010 |
|
|
|
|
|
W∴ Balboos wrote:
In these parts, the term is Surfing - but that's out, too. |
Ah, I see you have the machine that goes ping. This is my favorite. You see we lease it back from the company we sold it to and that way it comes under the monthly current budget and not the capital account.
modified 31-Aug-21 21:01pm.
|
|
|
|
|
So they've been promising 30-45 cm snow for today
We're expecting 6-12 inches but ..., Since yesterday, I've been jokingly telling my friend that a fake news.
Bryian Tan
|
|
|
|
|
Meanwhile, in Arizona...
(PIEBALD exits, whistling innocently.)
|
|
|
|
|
I just heard our local weatherman claim this deserved to be called the snowstorm of the century.
Just like the 3 other ones he described in the same way last winter.
|
|
|
|
|
That's why I've taken to checking out the NWS for my weather. Particularly for extreme weather.
No emotion. No need for ratings. No opinions - just probabilities.*
Then, too - why not hype it? Everyone seems to go and buy out the supermarkets whenever the sky determines it's time to phart. There has never been a food shortage that I can remember - except for Sandy - and that wasn't a real shortage since you couldn't stay in your home, anyway (and the food they bought was ruined).
Must be a need for millennials: they don't have good movies, music, or, with their face glued to their phone, a life. I guess they need something to be proud of.
* For hurricane season.
Ravings en masse^ |
---|
"The difference between genius and stupidity is that genius has its limits." - Albert Einstein | "If you are searching for perfection in others, then you seek disappointment. If you are seek perfection in yourself, then you will find failure." - Balboos HaGadol Mar 2010 |
|
|
|
|
|
xkcd: Chat Systems[^]
Munro is so on the money with that one. When are people gonna stop trying to reinvent the wheel with all these "productive" communication apps?
One morning I shot an elephant in my pajamas. How he got in my pajamas, I don't know.
|
|
|
|
|
Absolutely spot on! I wasted 10 minutes of my life yesterday trying to work out which one of the social face-ache / messaging systems had sent me a notification that I actually (for once) needed to read
|
|
|
|
|
Where is ICQ?
Bastard Programmer from Hell
If you can't read my code, try converting it here[^]
|
|
|
|
|
Top left, just below Skype
=========================================================
I'm an optoholic - my glass is always half full of vodka.
=========================================================
|
|
|
|
|
Wall (bathroom) should be much more prominent, as should Apache Request log.
Not because they're more used, but because they're better used.
I wanna be a eunuchs developer! Pass me a bread knife!
|
|
|
|
|
The answer to that also comes from XKCD
|
|
|
|
|
Instead of just complaining about it, I set out to fix it. Although maybe "fix" is a big word for what I'm doing since I'm not building it into the language, just adding it on as a class library. As a result it does not mix with normal code well.
Here is an example of what it would look like:
SIMDcode s = new SIMDcode(_ =>
{
var ptr = _.arg(0);
var size = _.arg(1);
var constants = _.arg(2);
var w = _._mm_loadu_si128(constants, 0);
var shufmask = _._mm_loadu_si128(constants, 16);
var alpha = _._mm_loadu_si128(constants, 32);
_.repeat(size, 4);
{
var p = _._mm_load_si128(ptr, 0);
p = _._mm_maddubs_epi16(p, w);
p = _._mm_add_epi32(p, _._mm_srli_si128(p, 2));
p = _._mm_srli_epi32(p, 6);
p = _._mm_shuffle_epi8(p, shufmask);
p = _._mm_or_si128(p, alpha);
_._mm_store_si128(ptr, 0, p);
_.add_r_i(ptr, 16);
}
_.endrepeat();
});
The "meat" looks just like "intrinsics" like you're used to (or not, if you've never worked with them), but in this case they're not proper intrinsic functions. When executed they build up some internal representation of the code, which is then compiled and written to unmanaged memory. That is also why it needs the "weird stuff" such as `arg` and `repeat` and `add_r_i` - normally normal code fills those rolls but here normal C# code will just execute once, it does not itself end up in the native code.
The native code generated by the example above is
push rbp
mov rbp,rsp
vmovdqu xmm0,XMMWORD PTR [r8]
vmovdqu xmm1,XMMWORD PTR [r8+0x10]
vmovdqu xmm2,XMMWORD PTR [r8+0x20]
15: vmovdqa xmm3,XMMWORD PTR [rcx]
vpmaddubsw xmm3,xmm3,xmm0
vpsrldq xmm4,xmm3,0x2
vpaddd xmm3,xmm3,xmm4
vpsrld xmm3,xmm3,0x6
vpshufb xmm3,xmm3,xmm1
vpor xmm3,xmm3,xmm2
vmovdqa XMMWORD PTR [rcx],xmm3
add rcx,0x10
sub rdx,0x4
jnz 0x15
leave
ret
To actually invoke the code you define a delegate and ask for a function pointer of that type:
delegate void ToGrayDelegate(IntPtr pixels, int length, byte[] constants);
...
var f = s.GetDelegate<ToGrayDelegate>(0);
Just invoke that as normal. (this runs in 1 cycle per pixel on Haswell, the best I could do in pure C# was 6 cycles per pixel)
This is just a preview, and maybe that's all it will ever be. A bunch of things work, a lot of things do not work yet, because I just threw this whole together in a day.
Anyway I'm not sure how useful this actually is. On the one hand, you wouldn't need a separate C++ project that has to be kept in sync with the main project (but that's not even a real problem). On the other hand, it's more annoying to write code like in the example than to just write C++ with intrinsics. But this way the code can be tuned with run-time parameters (but is that even useful? and you can't do it too often since compiling more code obviously costs time). Theoretically this can easily support x86 and x64 simultaneously (that's a bit of a hassle with native dlls), but choosing one of them at compile time isn't really a problem anyway.
Compared to System.Numerics.Vectors I'd say this is a lot better - it actually allows you to get stuff done, there are all the usual things that you need such as shuffles and shifts and oddball instructions like vpmaddubsw. But compared to a C++ dll it doesn't seem all that useful.
So what do you think. Useful? Interesting? Total waste of time?
modified 14-Mar-17 8:17am.
|
|
|
|