Ok I can answer by myself, Talos II board can't support Nvlink lacking the needed specific hardware (and I suppose also being more cost competitive in this way).
Being so I need to say this will put the bare performance out of the equation to justify the price tag.
Without counting the platform openness (an interesting positioning, but there are countless R&D departments not using Power architecture) the remaining differentiator is the software stack, in my case PowerAI Vision working only on power hardware.
Will test more to understand if really make the difference.
Announcement
Collapse
No announcement yet.
Raptor Launching Talos II Lite POWER9 Computer System At A Lower Cost
Collapse
X
-
I know it's an old thread but the only one I discovered on the topic.
Being testing PowerAI Vision for my work, I was also considering a Business Case for the purchase of a Talos II hardware.
What I didn't get (apart the open source nature I'm not considering) is the advantage vs a x86 hardware.
As example cant understood if a Talos II Lite board support Nvlink with the GPU or not.
Leave a comment:
-
Interesting case, although bottom-mounted PSU would require long cables:
Leave a comment:
-
Originally posted by mzs.112000 View Postit should have 5 PCIe slots(2 x16 slots, 1 x8 slot and 2 x4 slots).
For example, IBM Power System S922 in Single-Socket POWER9 configuration offers onboard SAS and:- PCIe slots with single processor:
- One x16 Gen4 low-profile, half-length slot (CAPI)
- One x8 Gen4 low-profile, half-length slot (with x16 connector) (CAPI)
- Two x8 Gen3 low-profile, half-length slots (with x16 connectors)
- Two x8 Gen3 low-profile, half-length slots (one of these slots is used for the required base LAN adapter)
Such a configuration would have avoided the PCIe weakness that makes Talos II Lite non-viable to me, but at the same time probably would have increased cost.Last edited by chithanh; 30 May 2018, 07:39 AM.
Leave a comment:
- PCIe slots with single processor:
-
Originally posted by mzs.112000 View PostI wish there was a Power9 system with a standard ATX mobo, liquid cooler, and also I do not need a SAS controller(I just need SATA, and NVMe), also lets get rid of the RS232 ports and add more USB ports, it should have 5 PCIe slots(2 x16 slots, 1 x8 slot and 2 x4 slots).
Note that SAS controllers are the only reliable type of controller to add more Sata ports if your chipset does not provide enough (or at all). Because SAS controllers also run Sata drives fine, and are so much more reliable than crappy Marvell or Asmedia chipsets you find in pcie sata controllers.
Leave a comment:
-
I wish there was a Power9 system with a standard ATX mobo, liquid cooler, and also I do not need a SAS controller(I just need SATA, and NVMe), also lets get rid of the RS232 ports and add more USB ports, it should have 5 PCIe slots(2 x16 slots, 1 x8 slot and 2 x4 slots).
- Likes 1
Leave a comment:
-
Originally posted by chithanh View PostI use malloc(1) only because malloc(0) might return NULL, but malloc(1) will return a non-NULL pointer as long as enough memory is available. Also initializing the memory isn't necessary as I never dereference the pointer. I just cast the pointer to a smaller type.
Anyway, to put it succinctly:
Code:bool le = (*(uint8_t *) foo32 == (uint8_t) *foo32);
less-significant byets at lower addresses.
The real question is: how much code is there that has such dependencies on LE? I'm pretty sure most open source developers never test their stuff on BE, so I don't trust it.
Leave a comment:
-
I use malloc(1) only because malloc(0) might return NULL, but malloc(1) will return a non-NULL pointer as long as enough memory is available. Also initializing the memory isn't necessary as I never dereference the pointer. I just cast the pointer to a smaller type.
Leave a comment:
-
No, I'm talking about casting pointers - not values. Also, you didn't malloc enough and didn't initialize the memory.
Fixed:
Originally posted by chithanh View PostOk, so you say that the following C code:
Code:#include <stdlib.h> #include <stdint.h> #include <stdio.h> int main() { void *foo = malloc(4); uint32_t *foo32 = (uint32_t *) foo; uint8_t *foo8 = (uint8_t *) foo32; *foo32 = 0x01234567; printf("0x%02x\n", (int) *foo8); }
The important point is to go from foo32 to foo8. This way, a compiler could decide to offset the pointer for you. Not saying it will, but it would at least have enough information to do so. Anyway, whether it would was my question, but everything I've seen points to "no".Last edited by coder; 24 May 2018, 07:11 PM.
Leave a comment:
-
Originally posted by coder View Postmy limited web research clearly suggests that the effect of pointer casting will change, based on endianness.
Code:#include <stdlib.h> #include <stdint.h> #include <stdio.h> int main() { void *foo = malloc(1); uint32_t bar = (uint32_t) foo; uint32_t baz = (uint32_t)(uint64_t) foo; printf("%s\n", bar == baz ? "true" : "false"); }
Leave a comment:
Leave a comment: