In Intel's case it used to be that Xeon's were literally no different to desktop but features got disabled. Then they did move to separate chips, though usually the same architecture and it was really more about core count, die size and cost than designing something differently. Though more cores required a slightly different way to connect them. Though arguably up until the very latest chip they were mostly trying to reused the same ringbus in an absolutely not consistent and not brilliantly designed way for server. They've finally moved to a full mesh and I would almost consider Skylake-SP to be one of their first genuine chips, it's got a different cache layout and vastly different fabric for pushing data around the chip. Before this they had the same architecture and same cache design as all their desktop stuff.
Then with Intel they pushed there server stuff down onto HEDT. AMD are using a basically one die for all design, but they've only done the same as Intel, designed something specifically with the fabric and inter chip interconnect specifically designed to work for server then pushed that design down to HEDT and desktop.
Hell if anything you can say, Intel designs a cheaper architecture for desktop while AMD provides you with full server quality chips in desktop, it would be quite funny if AMD actually went that route with marketing just to pee off Intel
In terms of software, any really big valuable customers write their own and optimising for a different architecture is in effect, childs play. Like a company Facebook's size will have hundreds of not thousands of software engineers, they'll get samples and try and optimise their code for said samples to get an idea of which way they'll go moving forwards. They'll have to optimise for Skylake-SP as well, because not doing so would be mental. Even just deciding to put a team on it for a couple of weeks to see what kind of performance improvements they can make then they can make decisions after more experience with the code. They'll have a rough idea that say 10 weeks with the whole team and we can get performance up another roughly 40%, then that information goes upstairs and someone makes a decision on what is best financially, EPYC or Skylake-SP.
Hell when it comes to Skylake-X, even with all this support, there are many games that just as with Zen, didn't work out of the box brilliantly with the new architecture and will take some time to optimise.