Let G = (V, E, w) be a directed graph, where w : V → R is an arbitrary weight function defined on its vertices. The bottleneck weight, or the capacity, of a path is the smallest weight of a vertex on the path. For two vertices u, v the bottleneck weight, or the capacity, from u to v, denoted c(u, v), is the maximum bottleneck weight of a path from u to v. In the All-Pairs Bottleneck Paths (APBP) problem we have to find the bottleneck weights for all ordered pairs of vertices. Our main result is an O(n2.575 ) time algorithm for the APBP problem. The exponent is derived from the exponent of fast matrix multiplication. Our algorithm is the first sub-cubic algorithm for this problem. Unlike the sub-cubic algorithm for the all-pairs shortest paths (APSP) problem, that only applies to bounded (or relatively small) integer edge or vertex weights, the algorithm presented for APBP problem works for arbitrary large vertex weights. The APBP problem has numerous applications, and several int...