Buffer analysis is an important function in geographical information system (GIS). It is also the base of many other more complicated spatial analyses. So it is important to improve the efficiency of buffer generalization. Generally, buffer generalization can be divided into two steps, primitive buffer boundary generalization and handling self-intersection of buffer boundary. A large number of points make the process of buffer generalization very time-consuming. However, many buffer boundary points are unnecessary to be generated. The larger radius is, the less the points on the original curve contribute to the ultimate buffer boundary. Such points are called noncharacteristic points. So it is a good way to remove these noncharacteristic points from the original curve and keep characteristic points of the curve. Douglas-Peucker algorithm is a good method for removing curve's noncharacteristic points and extracting characteristic points. This paper analyzes the efficiency of each step of buffer generalization and points out which procedures are time-consuming. Then this paper uses Douglas-Peucker algorithm to extract curve's characteristic points before buffer generating. The experimental results show that this algorithm is a good way to speed up buffer generalization while keeping the geometric features of the ultimate buffer areas