SYMBOL INDEX (203 symbols across 14 files) FILE: configs/BasePTQ.py function get_module (line 47) | def get_module(module_type, *args, **kwargs): FILE: configs/PTQ4ViT.py function get_module (line 51) | def get_module(module_type, *args, **kwargs): FILE: example/get_int.py function get_int_weights (line 12) | def get_int_weights(name, config_name): FILE: example/test_ablation.py function test_all_ablation (line 17) | def test_all_ablation(name, cfg_modifier=lambda x: x, calib_size=32): class cfg_modifier (line 42) | class cfg_modifier(): method __init__ (line 43) | def __init__(self, **kwargs): method __call__ (line 47) | def __call__(self, cfg): FILE: example/test_all.py function test_all (line 18) | def test_all(name, cfg_modifier=lambda x: x, calib_size=32, config_name=... class cfg_modifier (line 48) | class cfg_modifier(): method __init__ (line 49) | def __init__(self, **kwargs): method __call__ (line 53) | def __call__(self, cfg): FILE: example/test_vit.py function parse_args (line 19) | def parse_args(): function test_classification (line 26) | def test_classification(net,test_loader,max_iteration=None, description=... function process (line 47) | def process(pid, experiment_process, args_queue, n_gpu): function multiprocess (line 65) | def multiprocess(experiment_process, cfg_list=None, n_gpu=6): function init_config (line 82) | def init_config(config_name): function experiment_basic (line 93) | def experiment_basic(net='vit_base_patch16_384', config="PTQ4ViT"): FILE: quant_layers/conv.py class MinMaxQuantConv2d (line 9) | class MinMaxQuantConv2d(nn.Conv2d): method __init__ (line 13) | def __init__(self,in_channels: int, method forward (line 40) | def forward(self, x): method quant_weight_bias (line 53) | def quant_weight_bias(self): method quant_input (line 64) | def quant_input(self,x): method quant_forward (line 69) | def quant_forward(self,x): method calibration_step1 (line 76) | def calibration_step1(self,x): method calibration_step2 (line 83) | def calibration_step2(self,x): class QuantileQuantConv2d (line 91) | class QuantileQuantConv2d(MinMaxQuantConv2d): method __init__ (line 95) | def __init__(self, method _quantile (line 111) | def _quantile(self, tensor, quantile): method calibration_step2 (line 118) | def calibration_step2(self,x): class PTQSLQuantConv2d (line 126) | class PTQSLQuantConv2d(MinMaxQuantConv2d): method __init__ (line 134) | def __init__(self, in_channels: int, method _get_similarity (line 157) | def _get_similarity(self, tensor_raw, tensor_sim, metric=None, dim=-1): method quant_weight_bias (line 183) | def quant_weight_bias(self): method _search_best_w_interval (line 191) | def _search_best_w_interval(self, x, weight_interval_candidates): method _search_best_a_interval (line 222) | def _search_best_a_interval(self, x, input_interval_candidates): method _initialize_intervals (line 246) | def _initialize_intervals(self, x): method calibration_step2 (line 253) | def calibration_step2(self, x): class BatchingEasyQuantConv2d (line 279) | class BatchingEasyQuantConv2d(PTQSLQuantConv2d): method __init__ (line 281) | def __init__(self, in_channels: int, method _initialize_calib_parameters (line 297) | def _initialize_calib_parameters(self): method _initialize_intervals (line 312) | def _initialize_intervals(self): method _get_similarity (line 322) | def _get_similarity(self, tensor_raw, tensor_sim, metric=None, dim=-1,... method quant_weight_bias (line 353) | def quant_weight_bias(self): method quant_forward (line 358) | def quant_forward(self, x): method _search_best_w_interval (line 365) | def _search_best_w_interval(self, weight_interval_candidates): method _search_best_a_interval (line 398) | def _search_best_a_interval(self, input_interval_candidates): method calibration_step2 (line 429) | def calibration_step2(self): class ChannelwiseBatchingQuantConv2d (line 444) | class ChannelwiseBatchingQuantConv2d(PTQSLQuantConv2d): method __init__ (line 450) | def __init__(self, in_channels: int, method _initialize_calib_parameters (line 467) | def _initialize_calib_parameters(self): method _initialize_intervals (line 482) | def _initialize_intervals(self): method _get_similarity (line 498) | def _get_similarity(self, tensor_raw, tensor_sim, metric=None, raw_gra... method _search_best_w_interval (line 526) | def _search_best_w_interval(self, weight_interval_candidates): method _search_best_a_interval (line 559) | def _search_best_a_interval(self, input_interval_candidates): method calibration_step2 (line 591) | def calibration_step2(self): method quant_weight_bias (line 605) | def quant_weight_bias(self): method quant_forward (line 609) | def quant_forward(self, x): FILE: quant_layers/linear.py class MinMaxQuantLinear (line 6) | class MinMaxQuantLinear(nn.Linear): method __init__ (line 7) | def __init__(self, method forward (line 33) | def forward(self, x): method quant_weight_bias (line 46) | def quant_weight_bias(self): method quant_input (line 57) | def quant_input(self, x): method quant_forward (line 62) | def quant_forward(self,x): method _bias_correction_quant_forward (line 69) | def _bias_correction_quant_forward(self, x): method calibration_step1 (line 79) | def calibration_step1(self,x): method calibration_step2 (line 86) | def calibration_step2(self,x): class PTQSLQuantLinear (line 94) | class PTQSLQuantLinear(MinMaxQuantLinear): method __init__ (line 98) | def __init__(self, method _get_similarity (line 124) | def _get_similarity(self, tensor_raw, tensor_sim, metric=None): method quant_weight_bias (line 152) | def quant_weight_bias(self): method quant_input (line 164) | def quant_input(self, x): method _search_best_w_interval (line 171) | def _search_best_w_interval(self, x, weight_interval_candidates, raw_o... method _search_best_a_interval (line 202) | def _search_best_a_interval(self, x, input_interval_candidates, raw_ou... method _initialize_intervals (line 227) | def _initialize_intervals(self, x): method calibration_step2 (line 235) | def calibration_step2(self,x): class PostGeluPTQSLQuantLinear (line 262) | class PostGeluPTQSLQuantLinear(PTQSLQuantLinear): method __init__ (line 263) | def __init__(self, method quant_input (line 276) | def quant_input(self, x): method _search_best_a_interval (line 287) | def _search_best_a_interval(self, x, input_interval_candidates, raw_ou... method _initialize_intervals (line 313) | def _initialize_intervals(self, x): method calibration_step2 (line 322) | def calibration_step2(self,x): class PTQSLBatchingQuantLinear (line 349) | class PTQSLBatchingQuantLinear(PTQSLQuantLinear): method __init__ (line 350) | def __init__(self, method _initialize_calib_parameters (line 365) | def _initialize_calib_parameters(self): method _initialize_intervals (line 380) | def _initialize_intervals(self): method _get_similarity (line 399) | def _get_similarity(self, tensor_raw, tensor_sim, metric=None, raw_gra... method _get_pearson_w (line 426) | def _get_pearson_w(self, tensor_raw, tensor_sim): method _get_pearson_a (line 441) | def _get_pearson_a(self, tensor_raw, tensor_sim): method _search_best_w_interval (line 455) | def _search_best_w_interval(self, weight_interval_candidates): method _search_best_a_interval (line 497) | def _search_best_a_interval(self, input_interval_candidates): method calibration_step2 (line 536) | def calibration_step2(self): class PostGeluPTQSLBatchingQuantLinear (line 557) | class PostGeluPTQSLBatchingQuantLinear(PTQSLBatchingQuantLinear): method __init__ (line 562) | def __init__(self, method _initialize_intervals (line 576) | def _initialize_intervals(self): method quant_input (line 601) | def quant_input(self, x): method _search_best_a_interval (line 609) | def _search_best_a_interval(self, input_interval_candidates): FILE: quant_layers/matmul.py class MinMaxQuantMatMul (line 8) | class MinMaxQuantMatMul(nn.Module): method __init__ (line 10) | def __init__(self, A_bit=8, B_bit=8, mode="raw"): method forward (line 22) | def forward(self, A,B): method quant_input (line 35) | def quant_input(self,x,interval,qmax): method quant_forward (line 40) | def quant_forward(self,A,B): method calibration_step1 (line 47) | def calibration_step1(self,A,B): method calibration_step2 (line 54) | def calibration_step2(self,A,B): class PTQSLQuantMatMul (line 62) | class PTQSLQuantMatMul(MinMaxQuantMatMul): method __init__ (line 77) | def __init__(self, A_bit=8, B_bit=8, mode="raw", method _get_padding_parameters (line 109) | def _get_padding_parameters(self, A, B): method quant_input_A (line 124) | def quant_input_A(self, x): method quant_input_B (line 132) | def quant_input_B(self, x): method quant_forward (line 140) | def quant_forward(self, A, B): method _get_similarity (line 147) | def _get_similarity(self, tensor_raw, tensor_sim, metric=None, dim=-1): method _search_best_A_interval (line 177) | def _search_best_A_interval(self, A, B, A_interval_candidates): method _search_best_B_interval (line 210) | def _search_best_B_interval(self, A, B, B_interval_candidates): method _initialize_intervals (line 243) | def _initialize_intervals(self, A, B): method calibration_step2 (line 257) | def calibration_step2(self, A, B): class SoSPTQSLQuantMatMul (line 284) | class SoSPTQSLQuantMatMul(PTQSLQuantMatMul): method __init__ (line 298) | def __init__(self, A_bit=8, B_bit=8, mode="raw", method quant_input_A (line 313) | def quant_input_A(self, x): method _search_best_A_interval (line 318) | def _search_best_A_interval(self, A, B, split_candidates): method _initialize_intervals (line 348) | def _initialize_intervals(self, A, B): method calibration_step2 (line 361) | def calibration_step2(self, A, B): class PTQSLBatchingQuantMatMul (line 390) | class PTQSLBatchingQuantMatMul(PTQSLQuantMatMul): method __init__ (line 391) | def __init__(self, A_bit=8, B_bit=8, mode="raw", method _initialize_calib_parameters (line 396) | def _initialize_calib_parameters(self): method _get_padding_parameters (line 411) | def _get_padding_parameters(self, A, B): method _initialize_intervals (line 419) | def _initialize_intervals(self): method _get_similarity (line 442) | def _get_similarity(self, tensor_raw, tensor_sim, metric=None, dim=-1,... method _search_best_A_interval (line 483) | def _search_best_A_interval(self, A_interval_candidates): method _search_best_B_interval (line 524) | def _search_best_B_interval(self, B_interval_candidates): method calibration_step2 (line 565) | def calibration_step2(self): class SoSPTQSLBatchingQuantMatMul (line 578) | class SoSPTQSLBatchingQuantMatMul(PTQSLBatchingQuantMatMul): method __init__ (line 579) | def __init__(self, A_bit=8, B_bit=8, mode="raw", method quant_input_A (line 595) | def quant_input_A(self, x): method _search_best_A_interval (line 600) | def _search_best_A_interval(self, split_candidates): method calibration_step2 (line 633) | def calibration_step2(self): FILE: utils/datasets.py function calculate_n_correct (line 23) | def calculate_n_correct(outputs,targets): class SetSplittor (line 28) | class SetSplittor(): method __init__ (line 29) | def __init__(self,fraction=0.2): method split (line 32) | def split(self,dataset): class LoaderGenerator (line 35) | class LoaderGenerator(): method __init__ (line 38) | def __init__(self,root,dataset_name,train_batch_size=1,test_batch_size... method train_set (line 60) | def train_set(self): method test_set (line 64) | def test_set(self): method load (line 67) | def load(self): method train_loader (line 70) | def train_loader(self): method test_loader (line 74) | def test_loader(self,shuffle=False,batch_size=None): method val_loader (line 80) | def val_loader(self): method trainval_loader (line 84) | def trainval_loader(self): method calib_loader (line 88) | def calib_loader(self,num=1024,seed=3): class CIFARLoaderGenerator (line 96) | class CIFARLoaderGenerator(LoaderGenerator): method load (line 97) | def load(self): method train_set (line 119) | def train_set(self): method test_set (line 125) | def test_set(self): class COCOLoaderGenerator (line 130) | class COCOLoaderGenerator(LoaderGenerator): method load (line 131) | def load(self): class DetectionListDataset (line 138) | class DetectionListDataset(Dataset): method __init__ (line 139) | def __init__(self, list_path, img_size=416, multiscale=True, transform... method __getitem__ (line 154) | def __getitem__(self, index): method collate_fn (line 178) | def collate_fn(self, batch): method __len__ (line 195) | def __len__(self): class ImageNetLoaderGenerator (line 204) | class ImageNetLoaderGenerator(LoaderGenerator): method load (line 205) | def load(self): method train_set (line 224) | def train_set(self): method test_set (line 230) | def test_set(self): class CacheDataset (line 235) | class CacheDataset(Dataset): method __init__ (line 236) | def __init__(self,datas,targets) -> None: method __getitem__ (line 241) | def __getitem__(self,idx): method __len__ (line 244) | def __len__(self): class FasterImageNetLoaderGenerator (line 247) | class FasterImageNetLoaderGenerator(ImageNetLoaderGenerator): method test_loader (line 248) | def test_loader(self,shuffle=False,batch_size=None): class DebugLoaderGenerator (line 270) | class DebugLoaderGenerator(LoaderGenerator): method load (line 272) | def load(self): function get_dataset (line 290) | def get_dataset(args:argparse.Namespace): class ViTImageNetLoaderGenerator (line 325) | class ViTImageNetLoaderGenerator(ImageNetLoaderGenerator): method __init__ (line 330) | def __init__(self, root, dataset_name, train_batch_size, test_batch_si... method load (line 334) | def load(self): FILE: utils/integer.py function quantize_int_weight (line 8) | def quantize_int_weight(module): function dequantize_int_weight (line 20) | def dequantize_int_weight(module, w_int): function quantize_matmul_input (line 27) | def quantize_matmul_input(input, interval, qmax, n_G, n_V, n_H, crb_grou... function quantize_int_activation (line 44) | def quantize_int_activation(module, input): function get_model_int_weight (line 113) | def get_model_int_weight(wrapped_modules): FILE: utils/models.py function attention_forward (line 10) | def attention_forward(self, x): function window_attention_forward (line 28) | def window_attention_forward(self, x, mask = None): class MatMul (line 58) | class MatMul(nn.Module): method forward (line 59) | def forward(self, A, B): function get_net (line 62) | def get_net(name): FILE: utils/net_wrap.py function _fold_bn (line 8) | def _fold_bn(conv_module, bn_module): function fold_bn_into_conv (line 30) | def fold_bn_into_conv(conv_module, bn_module): function wrap_modules_in_net (line 39) | def wrap_modules_in_net(net,cfg): function wrap_certain_modules_in_net (line 83) | def wrap_certain_modules_in_net(net,cfg,layers,modules_to_wrap,wrap_embe... FILE: utils/quant_calib.py class QuantCalibrator (line 9) | class QuantCalibrator(): method __init__ (line 21) | def __init__(self, net, wrapped_modules, calib_loader, sequential=True): method sequential_quant_calib (line 28) | def sequential_quant_calib(self): method parallel_quant_calib (line 57) | def parallel_quant_calib(self): method quant_calib (line 95) | def quant_calib(self): method batching_quant_calib (line 106) | def batching_quant_calib(self): function grad_hook (line 173) | def grad_hook(module, grad_input, grad_output): function linear_forward_hook (line 178) | def linear_forward_hook(module, input, output): function conv2d_forward_hook (line 186) | def conv2d_forward_hook(module, input, output): function matmul_forward_hook (line 194) | def matmul_forward_hook(module, input, output): class HessianQuantCalibrator (line 203) | class HessianQuantCalibrator(QuantCalibrator): method __init__ (line 212) | def __init__(self, net, wrapped_modules, calib_loader, sequential=Fals... method quant_calib (line 216) | def quant_calib(self): method batching_quant_calib (line 300) | def batching_quant_calib(self):