DomDocument() é muito caro em termos de recursos. Eu uso XMLReader() para analisar arquivos XML muito grandes (> 600 MB) sem problemas. Dê uma olhada na documentação:http://php.net/manual/en/ livro.xmlreader.php