I thought you were saying that you were doing log switches every 5-6 minutes. Certainly disk contention would be a factor. I would also say that the larger to logfile, the longer it will take to archive. You might want to run the SELECT name, value FROM v$sysstat WHERE name = 'redo log space requests'; query. You should increase the log buffer and maybe even add more log groups. I don't think that there is a single answer for this. There are probably several combinations that you could try that would work.