Conversely, it'd also be an impossible problem for a lot of users, as for users that don't have that much activity a good global model is crucial to the proper functioning of the system, and you can't have that with completely local processing.
you simply cannot do this on a desktop system unless you pull in data from other users. you might be able to do that but: bandwidth, privacy concerns, and you might find you have to do just as much work to get the same performance.