Thursday, December 07, 2017

How Often to Synchronize with Central - SwC

Grist from a recent support conversation..."How often should we use Synchronize with Central (SwC)? We have some users doing it every minute."

Well....every minute seems a bit much...but...

The number of people actively working on a file affects the truth of the statement too. Every 30 minutes, for example, is too infrequent in my opinion. My own habit is to SwC as often as I complete any given task. I tend to take small bites, tasks that are 1-10 minutes, and SwC as soon as they are done.

More frequent SwC is less data transmission than every 30 minutes, potentially. Replacing or reloading a title block for 1,000 sheets is not a small task and probably ought to be done at lunch, advising people to create new local files afterward. Otherwise each sync will need to needlessly update each local file's copy of the sheet's title block too, for everyone. If that is done while they are all away they just inherit the new version of the project with their new local file.

It's all relative though because the transaction comparison between syncing that kind of change and closing a model and opening it later is subtle. In fact opening a file again might be slower, but reasonable, depending on how many people are involved. It can be justified though, especially if they are out of the project anyway such as out for lunch or after hours etc.

I think it is more important to be aware of other users also using SwC, than imposing a specific time requirement. When more than one person uses SwC at the same time Revit has to parse those changes and it does so, more or less, in a single threaded manner, not like a multi-thread OS (though they are improving that all the time) doing simultaneous tasks. It has to reconcile changes and move to others once it is satisfied it can finish successfully. The more people forcing Revit to do that at the same time the slower it gets for everyone. That's where the advice to schedule or increase the time between SwC came from. One client decided to build their own tool so users can see if someone is syncing. A button on their Quick Access Toolbar parked next to the SwC button is red when someone is syncing and green when nobody is. Green means go for it.

Any sort of "Every 30 minutes" rule is often an over simplification, a rule meant to be easy to implement. In practice it can be just as harmful as helpful. If I slip and go 60 minutes or longer then that starts to slow down SwC times for everyone else too. Pushing and pulling data through a pipe takes time, smaller chunks of data generally take less time and less time to reconcile with the model too.

I'd focus on developing awareness of other users syncing as the priority and it's increasingly important the more users that are working on the same project file.


Dave said...

I agree completely with you, Steve.
I have a running disagreement with one of our power users that wants me to set the Local Save reminder to 15 minutes and the SWC reminder to 2 hours.
I keep telling him just what you said, but he's convinced that all he needs to do is a Local save.
One of these days, I'm going to dig into Log Files and prove my case with hard numbers.
But, yeah, the more often, the better.

Jason Peckovitch said...


Thanks for the post and long time no talk. I annoy the crap out of my office by having the SwC set for every 5 minutes knowing full well they will hit cancel several times before they do it. When it was set to 30 min or even 15, people would cancel so much then eventually crash losing hours worth of work.

Dave - in the event that Revit crashes with the 15 min saves, they can open the local model and than sync but 2 hours between syncs is very excessive.