I would like to do in the following way:
1 Load all data into a temp table with direct option.
2 Create an index on the temp table. The index key must be equal to PK of the original table.
3 Delete duplicated rows in the temp table.
4 Insert into orginal table from temp.

What I think is unique constraint on the original table solws down the load.