added gpu acceleration.