Can you specify what version and development model you're using?
The scheduled task is hard coded to run at 2am (server time) and only delete 1000 contacts at a time. If you're using v13 MVC you should be able to use something like this to override and create your own service.
(Code reference from Chris Bass)
using CMS;
using CMS.ContactManagement;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using Site;
[assembly: RegisterImplementation(typeof(IOffPeakService), typeof(AlwaysOffPeakService), Priority = CMS.Core.RegistrationPriority.Default)]
namespace Site
{
/// <summary>
/// Summary description for AlwaysOffPeakService
/// </summary>
public class AlwaysOffPeakService : IOffPeakService
{
public AlwaysOffPeakService()
{
}
public DateTime GetNextOffPeakPeriodStart(DateTime dateTime)
{
return DateTime.Now;
}
public bool IsOffPeak(DateTime dateTime)
{
return true;
}
}
}