Most designs allow the user to fill out the form before validation. This is common on one-page designs, where most of all fields are visible and accessible to your client. That's fine and in this case you would definitely validate at the submission.
Other designs are tabbed or a lead-in process, where the user must enter their username/email & password pair for validation before proceeding to the rest of the form, by which is usually also in page-by-page form to keep a "horizontal-thinking flow" and that is also okay to do.
That's 2 common use cases. So either way is acceptable, but I believe it depends on the style or design of the forms your speaking of, one is a single vertical page, the other is a series of pages.
Alas, there is my favorite: Option 3.
Let's say you want it simple, one page to do it all. And let's say that you want it to be validated, but want them to be able to fill out the form hassle-free. This can be done too. How? On-the-fly / real-time validation.
"*Account Validated" in green
"*Username/Email & Password do not match" in red
(optionally you could change the account fields to those colors as well)
Essentially I'm suggesting that instead of choosing to do validation before or after the process, you do so during it. You don't have to worry about people wasting time filling it out only to find out that it didn't pass, nor if their browser will remember their field information (if that's also a concern). And it doesn't break the movement of the page, it all happens without taking them anywhere else. A jerk-free experience is a plus!
This is the way a lot more people are doing it lately and it seems to address both concerns in one solution. Yes, it is rather more complex, but the payoff of having done it and being able to do it again, as well as happy clients, is priceless!
Best of luck and hope you find success!