Re: Off Topic
Posted: Sat Oct 26, 2024 6:56 pm
Yeah, makes sense!
A quarternion isn't anything, but if you mean a quaternion, then that's like a complex number but with three different imaginary units related like so:
Yeah, ARM lends itself to better efficiency because of the fixed-length instructions, which mean the decoder can fetch several of them at once and work on decoding them in parallel, whereas x86's variable-length instructions mandate sequential decoding. My boss mentioned to me at one point that the "Apple Sililcon" ARM chips are particularly good for power efficiency, because Apple acquired a company that had a good track-record for designing power-efficient ICs. So even if Windows on ARM did become popular for PCs (and it's been around for a long time, so there's not much indication of that), the chips used for it would still have to play some catch-up with Apple on that front…Master wrote: Sun Oct 20, 2024 7:17 pm Nah, ARM is kinda a catch-all term for a family (or rather Instruction Set Architecture) of CPUs. Plum's probably the best person to explain these sorts of things, this is Plum's domain moreso than mine. But effectively they're a different technology than the CPUs you usually see in PCs, think Intel or AMD (those are x86 based). Macintosh computers recently (say about 5 years ago I think at this point?) moved from Intel (x86) to ARM CPUs, and they've remained pretty performant and competitive. Microsoft have been trying to do the same for a while now, but there's not really been a breakthrough product yet that would imply that the idea has reached a viable state...though they've been pushing hard recently and there are Windows laptops that have ARM CPUs as opposed to AMD/Intel ones.
ARM CPUs tend to be used a lot on embedded devices, think your phone or handheld gaming console. They're also used in a lot of embedded systems, servers...all over the place really.
Ahh ok, I'm not going to pretend i understand that completely, but I have dealt with complex numbers in the past to represent vector values with real and imaginary components, so I'm going to extrapolate from there and assume based on what you've stated that this effectively building on that and adding a third dimension to that?PluMGMK wrote: Sat Oct 26, 2024 10:13 pmA quarternion isn't anything, but if you mean a quaternion, then that's like a complex number but with three different imaginary units related like so:
i² = j² = k² = ijk = -1
This is the formula that William Rowan Hamilton graffitied onto Brougham Bridge in Dublin on 16 October many years ago, and it's now preserved there on a plaque
A complex number can be used to represent a rotation in a 2D plane, because of the Euler formula eiθ = cos(θ) + i×sin(θ) – likewise the exponentiation of a purely imaginary quaternion can represent a rotation in 3D space: e(ui+vj+wk)θ represents a rotation around the axis defined by the vector (u,v,w).
IIRC, if you represent a vector in 3D space as an imaginary quaternion, xi+yj+zk, then you can rotate it by premultiplying by one of those exponentials and then postmultiplying by its conjugate – i.e.
e(ui+vj+wk)θ/2 × (xi+yj+zk) × e–(ui+vj+wk)θ/2
gives you back (x,y,z) rotated by the angle θ around the axis (u,v,w). I might be slightly wrong on the details, but it's something like that.
Anyway, the beauty of this approach is that by continuously varying the parameter θ from zero to its final value, you can get a smooth transition from the initial position, to the final rotated position.
Ahh ok, so the fetch stage can bring forth multiple instructions to the decoder, which can then take multiple instructions to dispatch thus creating a faster pipeline for instruction execution? And yeah, I think the first time I heard about Windows on ARM was for Windows RT, which was back in the WIndows 8 days right? That's about just over a decade ago at this point I think?PluMGMK wrote: Sat Oct 26, 2024 10:13 pmYeah, ARM lends itself to better efficiency because of the fixed-length instructions, which mean the decoder can fetch several of them at once and work on decoding them in parallel, whereas x86's variable-length instructions mandate sequential decoding. My boss mentioned to me at one point that the "Apple Sililcon" ARM chips are particularly good for power efficiency, because Apple acquired a company that had a good track-record for designing power-efficient ICs. So even if Windows on ARM did become popular for PCs (and it's been around for a long time, so there's not much indication of that), the chips used for it would still have to play some catch-up with Apple on that front…Master wrote: Sun Oct 20, 2024 7:17 pm Nah, ARM is kinda a catch-all term for a family (or rather Instruction Set Architecture) of CPUs. Plum's probably the best person to explain these sorts of things, this is Plum's domain moreso than mine. But effectively they're a different technology than the CPUs you usually see in PCs, think Intel or AMD (those are x86 based). Macintosh computers recently (say about 5 years ago I think at this point?) moved from Intel (x86) to ARM CPUs, and they've remained pretty performant and competitive. Microsoft have been trying to do the same for a while now, but there's not really been a breakthrough product yet that would imply that the idea has reached a viable state...though they've been pushing hard recently and there are Windows laptops that have ARM CPUs as opposed to AMD/Intel ones.
ARM CPUs tend to be used a lot on embedded devices, think your phone or handheld gaming console. They're also used in a lot of embedded systems, servers...all over the place really.
More or less. Technically quaternions have four dimensions when you include the real part (hence the name), but if you just use the three imaginary units you can represent vectors in 3D space!Master wrote: Sat Oct 26, 2024 10:37 pm Ahh ok, I'm not going to pretend i understand that completely, but I have dealt with complex numbers in the past to represent vector values with real and imaginary components, so I'm going to extrapolate from there and assume based on what you've stated that this effectively building on that and adding a third dimension to that?
Pretty much, yes! I think you're right about Windows RT too. I remember Windows 8 being the first version to support Secure Boot, and there was controversy because Microsoft were requiring it for PCs to get the "Windows 8 ready" label (or whatever it is). Because of the outcry, they amended the spec to mandate that the user must be able to disable Secure Boot, but only for x86 systems – for ARM systems Secure Boot did not have to be disableableMaster wrote: Sat Oct 26, 2024 10:37 pm Ahh ok, so the fetch stage can bring forth multiple instructions to the decoder, which can then take multiple instructions to dispatch thus creating a faster pipeline for instruction execution? And yeah, I think the first time I heard about Windows on ARM was for Windows RT, which was back in the WIndows 8 days right? That's about just over a decade ago at this point I think?
Imagine your finger standing up straight, and in that state, the Euler xyz representation for their all their rotations is 0,0,0. If you bend the first joint 90 degrees while keeping the second joint straight, the middle bone's relative (more commonly "local") rotation is now 90,0,0. However, the tip bone's local rotation is still 0,0,0, because relative to its parent (the middle bone), it never changed its state. If that makes sense?Master wrote: Wed Oct 23, 2024 7:12 pmrelative rotations and the like seemed a little more than I could keep with xD
I think it kinda does, effectively each bones rotation is relative to its parent bone?Adsolution wrote: Sun Oct 27, 2024 1:58 amImagine your finger standing up straight, and in that state, the Euler xyz representation for their all their rotations is 0,0,0. If you bend the first joint 90 degrees while keeping the second joint straight, the middle bone's relative (more commonly "local") rotation is now 90,0,0. However, the tip bone's local rotation is still 0,0,0, because relative to its parent (the middle bone), it never changed its state. If that makes sense?Master wrote: Wed Oct 23, 2024 7:12 pmrelative rotations and the like seemed a little more than I could keep with xD
That would explain why quaternions were the default option when I was messing around with some models in Blender...I think this has helped me understand the why a little more.Adsolution wrote: Sun Oct 27, 2024 1:58 am It's also worth mentioning that quaternions are the only uniform way to define 3D rotation. Euler angles are messy because there are multiple ways to define a single rotation, and the order of the transformations is important. Storing rotations as quaternions in computer science also has the added benefit of not requiring additional sin/cos computations in order to perform matrix transformations with them.
It's just unfortunate that quaternions aren't easily written by hand![]()
Prefacing this to say that I don't operate in Mac territory but I'll share the impression I've gotten from what I've seen and read. I believe the M1s could outperform the contemporary Intel CPUs (at least of the prior Intel MacBooks) of the time if memory serves, so I'd expect there to be a reasonable leap in performance from the 2013 Pro (Looking it up they were Haswell CPUs so an I7-4000 series I'd expect) to the M3. I don't how the Air thermals would be like using it with the same kinda workload, I know they tend to be passively cooled so I'd have to keep an eye out for whether they can dissipate enough heat when being pushed.Adsolution wrote: Sun Oct 27, 2024 1:58 am Also, since this thread tends to get used as an instant messenger and my question was lost in the void... do any mac nerds have some advice?https://raymanpc.com/forum/viewtopic.ph ... 1#p1491881